{
  "type": "Program",
  "start": 0,
  "end": 28370,
  "loc": {
    "start": {
      "line": 1,
      "column": 0
    },
    "end": {
      "line": 711,
      "column": 0
    }
  },
  "sourceType": "module",
  "body": [
    {
      "type": "ImportDeclaration",
      "start": 0,
      "end": 40,
      "loc": {
        "start": {
          "line": 1,
          "column": 0
        },
        "end": {
          "line": 1,
          "column": 40
        }
      },
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "start": 7,
          "end": 13,
          "loc": {
            "start": {
              "line": 1,
              "column": 7
            },
            "end": {
              "line": 1,
              "column": 13
            }
          },
          "local": {
            "type": "Identifier",
            "start": 7,
            "end": 13,
            "loc": {
              "start": {
                "line": 1,
                "column": 7
              },
              "end": {
                "line": 1,
                "column": 13
              }
            },
            "name": "Sketch"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 19,
        "end": 39,
        "loc": {
          "start": {
            "line": 1,
            "column": 19
          },
          "end": {
            "line": 1,
            "column": 39
          }
        },
        "value": "../sketcher/sketch",
        "rawValue": "../sketcher/sketch",
        "raw": "'../sketcher/sketch'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 42,
      "end": 86,
      "loc": {
        "start": {
          "line": 2,
          "column": 0
        },
        "end": {
          "line": 2,
          "column": 44
        }
      },
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "start": 49,
          "end": 57,
          "loc": {
            "start": {
              "line": 2,
              "column": 7
            },
            "end": {
              "line": 2,
              "column": 15
            }
          },
          "local": {
            "type": "Identifier",
            "start": 49,
            "end": 57,
            "loc": {
              "start": {
                "line": 2,
                "column": 7
              },
              "end": {
                "line": 2,
                "column": 15
              }
            },
            "name": "Sketcher"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 63,
        "end": 85,
        "loc": {
          "start": {
            "line": 2,
            "column": 21
          },
          "end": {
            "line": 2,
            "column": 43
          }
        },
        "value": "../sketcher/sketcher",
        "rawValue": "../sketcher/sketcher",
        "raw": "'../sketcher/sketcher'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 88,
      "end": 141,
      "loc": {
        "start": {
          "line": 3,
          "column": 0
        },
        "end": {
          "line": 3,
          "column": 53
        }
      },
      "specifiers": [
        {
          "type": "ImportSpecifier",
          "start": 96,
          "end": 110,
          "loc": {
            "start": {
              "line": 3,
              "column": 8
            },
            "end": {
              "line": 3,
              "column": 22
            }
          },
          "imported": {
            "type": "Identifier",
            "start": 96,
            "end": 110,
            "loc": {
              "start": {
                "line": 3,
                "column": 8
              },
              "end": {
                "line": 3,
                "column": 22
              }
            },
            "name": "ClassCadObject"
          },
          "local": {
            "type": "Identifier",
            "start": 96,
            "end": 110,
            "loc": {
              "start": {
                "line": 3,
                "column": 8
              },
              "end": {
                "line": 3,
                "column": 22
              }
            },
            "name": "ClassCadObject"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 117,
        "end": 140,
        "loc": {
          "start": {
            "line": 3,
            "column": 29
          },
          "end": {
            "line": 3,
            "column": 52
          }
        },
        "value": "../sketcher/ccobjects",
        "rawValue": "../sketcher/ccobjects",
        "raw": "'../sketcher/ccobjects'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 143,
      "end": 175,
      "loc": {
        "start": {
          "line": 4,
          "column": 0
        },
        "end": {
          "line": 4,
          "column": 32
        }
      },
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "start": 150,
          "end": 154,
          "loc": {
            "start": {
              "line": 4,
              "column": 7
            },
            "end": {
              "line": 4,
              "column": 11
            }
          },
          "local": {
            "type": "Identifier",
            "start": 150,
            "end": 154,
            "loc": {
              "start": {
                "line": 4,
                "column": 7
              },
              "end": {
                "line": 4,
                "column": 11
              }
            },
            "name": "View"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 160,
        "end": 174,
        "loc": {
          "start": {
            "line": 4,
            "column": 17
          },
          "end": {
            "line": 4,
            "column": 31
          }
        },
        "value": "../core/view",
        "rawValue": "../core/view",
        "raw": "'../core/view'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 177,
      "end": 246,
      "loc": {
        "start": {
          "line": 5,
          "column": 0
        },
        "end": {
          "line": 5,
          "column": 69
        }
      },
      "specifiers": [
        {
          "type": "ImportSpecifier",
          "start": 185,
          "end": 192,
          "loc": {
            "start": {
              "line": 5,
              "column": 8
            },
            "end": {
              "line": 5,
              "column": 15
            }
          },
          "imported": {
            "type": "Identifier",
            "start": 185,
            "end": 192,
            "loc": {
              "start": {
                "line": 5,
                "column": 8
              },
              "end": {
                "line": 5,
                "column": 15
              }
            },
            "name": "parseTo"
          },
          "local": {
            "type": "Identifier",
            "start": 185,
            "end": 192,
            "loc": {
              "start": {
                "line": 5,
                "column": 8
              },
              "end": {
                "line": 5,
                "column": 15
              }
            },
            "name": "parseTo"
          }
        },
        {
          "type": "ImportSpecifier",
          "start": 194,
          "end": 204,
          "loc": {
            "start": {
              "line": 5,
              "column": 17
            },
            "end": {
              "line": 5,
              "column": 27
            }
          },
          "imported": {
            "type": "Identifier",
            "start": 194,
            "end": 204,
            "loc": {
              "start": {
                "line": 5,
                "column": 17
              },
              "end": {
                "line": 5,
                "column": 27
              }
            },
            "name": "Expression"
          },
          "local": {
            "type": "Identifier",
            "start": 194,
            "end": 204,
            "loc": {
              "start": {
                "line": 5,
                "column": 17
              },
              "end": {
                "line": 5,
                "column": 27
              }
            },
            "name": "Expression"
          }
        },
        {
          "type": "ImportSpecifier",
          "start": 206,
          "end": 215,
          "loc": {
            "start": {
              "line": 5,
              "column": 29
            },
            "end": {
              "line": 5,
              "column": 38
            }
          },
          "imported": {
            "type": "Identifier",
            "start": 206,
            "end": 215,
            "loc": {
              "start": {
                "line": 5,
                "column": 29
              },
              "end": {
                "line": 5,
                "column": 38
              }
            },
            "name": "Statement"
          },
          "local": {
            "type": "Identifier",
            "start": 206,
            "end": 215,
            "loc": {
              "start": {
                "line": 5,
                "column": 29
              },
              "end": {
                "line": 5,
                "column": 38
              }
            },
            "name": "Statement"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 222,
        "end": 245,
        "loc": {
          "start": {
            "line": 5,
            "column": 45
          },
          "end": {
            "line": 5,
            "column": 68
          }
        },
        "value": "../sketcher/cchelpers",
        "rawValue": "../sketcher/cchelpers",
        "raw": "'../sketcher/cchelpers'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 248,
      "end": 274,
      "loc": {
        "start": {
          "line": 6,
          "column": 0
        },
        "end": {
          "line": 6,
          "column": 26
        }
      },
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "start": 255,
          "end": 260,
          "loc": {
            "start": {
              "line": 6,
              "column": 7
            },
            "end": {
              "line": 6,
              "column": 12
            }
          },
          "local": {
            "type": "Identifier",
            "start": 255,
            "end": 260,
            "loc": {
              "start": {
                "line": 6,
                "column": 7
              },
              "end": {
                "line": 6,
                "column": 12
              }
            },
            "name": "THREE"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 266,
        "end": 273,
        "loc": {
          "start": {
            "line": 6,
            "column": 18
          },
          "end": {
            "line": 6,
            "column": 25
          }
        },
        "value": "three",
        "rawValue": "three",
        "raw": "'three'"
      },
      "trailingComments": [
        {
          "type": "CommentLine",
          "value": "note: invisible geometry is not used anymore...",
          "start": 278,
          "end": 327,
          "loc": {
            "start": {
              "line": 8,
              "column": 0
            },
            "end": {
              "line": 8,
              "column": 49
            }
          },
          "range": [
            278,
            327
          ]
        },
        {
          "type": "CommentLine",
          "value": "var interactMaterial = new THREE.MeshBasicMaterial({color: 0xff0000, visible: false, side: THREE.DoubleSide});",
          "start": 329,
          "end": 441,
          "loc": {
            "start": {
              "line": 9,
              "column": 0
            },
            "end": {
              "line": 9,
              "column": 112
            }
          },
          "range": [
            329,
            441
          ]
        },
        {
          "type": "CommentLine",
          "value": " mixin for geometric objects that can be highlighted",
          "start": 445,
          "end": 499,
          "loc": {
            "start": {
              "line": 11,
              "column": 0
            },
            "end": {
              "line": 11,
              "column": 54
            }
          },
          "range": [
            445,
            499
          ]
        }
      ]
    },
    {
      "type": "FunctionDeclaration",
      "start": 501,
      "end": 1967,
      "loc": {
        "start": {
          "line": 12,
          "column": 0
        },
        "end": {
          "line": 43,
          "column": 1
        }
      },
      "id": {
        "type": "Identifier",
        "start": 510,
        "end": 527,
        "loc": {
          "start": {
            "line": 12,
            "column": 9
          },
          "end": {
            "line": 12,
            "column": 26
          }
        },
        "name": "meshHighlightable",
        "leadingComments": null
      },
      "generator": false,
      "expression": false,
      "async": false,
      "params": [],
      "body": {
        "type": "BlockStatement",
        "start": 530,
        "end": 1967,
        "loc": {
          "start": {
            "line": 12,
            "column": 29
          },
          "end": {
            "line": 43,
            "column": 1
          }
        },
        "body": [
          {
            "type": "ExpressionStatement",
            "start": 537,
            "end": 1469,
            "loc": {
              "start": {
                "line": 13,
                "column": 4
              },
              "end": {
                "line": 32,
                "column": 6
              }
            },
            "expression": {
              "type": "AssignmentExpression",
              "start": 537,
              "end": 1468,
              "loc": {
                "start": {
                  "line": 13,
                  "column": 4
                },
                "end": {
                  "line": 32,
                  "column": 5
                }
              },
              "operator": "=",
              "left": {
                "type": "MemberExpression",
                "start": 537,
                "end": 547,
                "loc": {
                  "start": {
                    "line": 13,
                    "column": 4
                  },
                  "end": {
                    "line": 13,
                    "column": 14
                  }
                },
                "object": {
                  "type": "ThisExpression",
                  "start": 537,
                  "end": 541,
                  "loc": {
                    "start": {
                      "line": 13,
                      "column": 4
                    },
                    "end": {
                      "line": 13,
                      "column": 8
                    }
                  }
                },
                "property": {
                  "type": "Identifier",
                  "start": 542,
                  "end": 547,
                  "loc": {
                    "start": {
                      "line": 13,
                      "column": 9
                    },
                    "end": {
                      "line": 13,
                      "column": 14
                    }
                  },
                  "name": "hover"
                },
                "computed": false
              },
              "right": {
                "type": "FunctionExpression",
                "start": 550,
                "end": 1468,
                "loc": {
                  "start": {
                    "line": 13,
                    "column": 17
                  },
                  "end": {
                    "line": 32,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 561,
                  "end": 1468,
                  "loc": {
                    "start": {
                      "line": 13,
                      "column": 28
                    },
                    "end": {
                      "line": 32,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 572,
                      "end": 594,
                      "loc": {
                        "start": {
                          "line": 14,
                          "column": 8
                        },
                        "end": {
                          "line": 14,
                          "column": 30
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 576,
                          "end": 593,
                          "loc": {
                            "start": {
                              "line": 14,
                              "column": 12
                            },
                            "end": {
                              "line": 14,
                              "column": 29
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 576,
                            "end": 579,
                            "loc": {
                              "start": {
                                "line": 14,
                                "column": 12
                              },
                              "end": {
                                "line": 14,
                                "column": 15
                              }
                            },
                            "name": "obj"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 582,
                            "end": 593,
                            "loc": {
                              "start": {
                                "line": 14,
                                "column": 18
                              },
                              "end": {
                                "line": 14,
                                "column": 29
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 582,
                              "end": 586,
                              "loc": {
                                "start": {
                                  "line": 14,
                                  "column": 18
                                },
                                "end": {
                                  "line": 14,
                                  "column": 22
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 587,
                              "end": 593,
                              "loc": {
                                "start": {
                                  "line": 14,
                                  "column": 23
                                },
                                "end": {
                                  "line": 14,
                                  "column": 29
                                }
                              },
                              "name": "parent"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 604,
                      "end": 643,
                      "loc": {
                        "start": {
                          "line": 15,
                          "column": 8
                        },
                        "end": {
                          "line": 15,
                          "column": 47
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 608,
                          "end": 642,
                          "loc": {
                            "start": {
                              "line": 15,
                              "column": 12
                            },
                            "end": {
                              "line": 15,
                              "column": 46
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 608,
                            "end": 614,
                            "loc": {
                              "start": {
                                "line": 15,
                                "column": 12
                              },
                              "end": {
                                "line": 15,
                                "column": 18
                              }
                            },
                            "name": "sketch"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 617,
                            "end": 642,
                            "loc": {
                              "start": {
                                "line": 15,
                                "column": 21
                              },
                              "end": {
                                "line": 15,
                                "column": 46
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 617,
                              "end": 636,
                              "loc": {
                                "start": {
                                  "line": 15,
                                  "column": 21
                                },
                                "end": {
                                  "line": 15,
                                  "column": 40
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 617,
                                "end": 623,
                                "loc": {
                                  "start": {
                                    "line": 15,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 15,
                                    "column": 27
                                  }
                                },
                                "name": "Sketch"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 624,
                                "end": 636,
                                "loc": {
                                  "start": {
                                    "line": 15,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 15,
                                    "column": 40
                                  }
                                },
                                "name": "FindSketchOf"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "ThisExpression",
                                "start": 637,
                                "end": 641,
                                "loc": {
                                  "start": {
                                    "line": 15,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 15,
                                    "column": 45
                                  }
                                }
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 653,
                      "end": 673,
                      "loc": {
                        "start": {
                          "line": 16,
                          "column": 8
                        },
                        "end": {
                          "line": 16,
                          "column": 28
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 657,
                        "end": 664,
                        "loc": {
                          "start": {
                            "line": 16,
                            "column": 12
                          },
                          "end": {
                            "line": 16,
                            "column": 19
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "Identifier",
                          "start": 658,
                          "end": 664,
                          "loc": {
                            "start": {
                              "line": 16,
                              "column": 13
                            },
                            "end": {
                              "line": 16,
                              "column": 19
                            }
                          },
                          "name": "sketch"
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 666,
                        "end": 673,
                        "loc": {
                          "start": {
                            "line": 16,
                            "column": 21
                          },
                          "end": {
                            "line": 16,
                            "column": 28
                          }
                        },
                        "argument": null,
                        "leadingComments": null,
                        "trailingComments": null
                      },
                      "alternate": null,
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "like object being deleted...",
                          "start": 677,
                          "end": 707,
                          "loc": {
                            "start": {
                              "line": 16,
                              "column": 32
                            },
                            "end": {
                              "line": 16,
                              "column": 62
                            }
                          },
                          "range": [
                            677,
                            707
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 717,
                      "end": 784,
                      "loc": {
                        "start": {
                          "line": 17,
                          "column": 8
                        },
                        "end": {
                          "line": 17,
                          "column": 75
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 717,
                        "end": 783,
                        "loc": {
                          "start": {
                            "line": 17,
                            "column": 8
                          },
                          "end": {
                            "line": 17,
                            "column": 74
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 717,
                          "end": 736,
                          "loc": {
                            "start": {
                              "line": 17,
                              "column": 8
                            },
                            "end": {
                              "line": 17,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 717,
                            "end": 730,
                            "loc": {
                              "start": {
                                "line": 17,
                                "column": 8
                              },
                              "end": {
                                "line": 17,
                                "column": 21
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 717,
                              "end": 721,
                              "loc": {
                                "start": {
                                  "line": 17,
                                  "column": 8
                                },
                                "end": {
                                  "line": 17,
                                  "column": 12
                                }
                              },
                              "leadingComments": null
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 722,
                              "end": 730,
                              "loc": {
                                "start": {
                                  "line": 17,
                                  "column": 13
                                },
                                "end": {
                                  "line": 17,
                                  "column": 21
                                }
                              },
                              "name": "material"
                            },
                            "computed": false,
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 731,
                            "end": 736,
                            "loc": {
                              "start": {
                                "line": 17,
                                "column": 22
                              },
                              "end": {
                                "line": 17,
                                "column": 27
                              }
                            },
                            "name": "color"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 739,
                          "end": 783,
                          "loc": {
                            "start": {
                              "line": 17,
                              "column": 30
                            },
                            "end": {
                              "line": 17,
                              "column": 74
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 743,
                            "end": 754,
                            "loc": {
                              "start": {
                                "line": 17,
                                "column": 34
                              },
                              "end": {
                                "line": 17,
                                "column": 45
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 743,
                              "end": 748,
                              "loc": {
                                "start": {
                                  "line": 17,
                                  "column": 34
                                },
                                "end": {
                                  "line": 17,
                                  "column": 39
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 749,
                              "end": 754,
                              "loc": {
                                "start": {
                                  "line": 17,
                                  "column": 40
                                },
                                "end": {
                                  "line": 17,
                                  "column": 45
                                }
                              },
                              "name": "Color"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "CallExpression",
                              "start": 755,
                              "end": 782,
                              "loc": {
                                "start": {
                                  "line": 17,
                                  "column": 46
                                },
                                "end": {
                                  "line": 17,
                                  "column": 73
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 755,
                                "end": 763,
                                "loc": {
                                  "start": {
                                    "line": 17,
                                    "column": 46
                                  },
                                  "end": {
                                    "line": 17,
                                    "column": 54
                                  }
                                },
                                "name": "getColor"
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 764,
                                  "end": 775,
                                  "loc": {
                                    "start": {
                                      "line": 17,
                                      "column": 55
                                    },
                                    "end": {
                                      "line": 17,
                                      "column": 66
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 764,
                                    "end": 768,
                                    "loc": {
                                      "start": {
                                        "line": 17,
                                        "column": 55
                                      },
                                      "end": {
                                        "line": 17,
                                        "column": 59
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 769,
                                    "end": 775,
                                    "loc": {
                                      "start": {
                                        "line": 17,
                                        "column": 60
                                      },
                                      "end": {
                                        "line": 17,
                                        "column": 66
                                      }
                                    },
                                    "name": "parent"
                                  },
                                  "computed": false
                                },
                                {
                                  "type": "Literal",
                                  "start": 777,
                                  "end": 781,
                                  "loc": {
                                    "start": {
                                      "line": 17,
                                      "column": 68
                                    },
                                    "end": {
                                      "line": 17,
                                      "column": 72
                                    }
                                  },
                                  "value": true,
                                  "rawValue": true,
                                  "raw": "true"
                                }
                              ]
                            }
                          ]
                        },
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "like object being deleted...",
                          "start": 677,
                          "end": 707,
                          "loc": {
                            "start": {
                              "line": 16,
                              "column": 32
                            },
                            "end": {
                              "line": 16,
                              "column": 62
                            }
                          },
                          "range": [
                            677,
                            707
                          ]
                        }
                      ]
                    },
                    {
                      "type": "IfStatement",
                      "start": 794,
                      "end": 832,
                      "loc": {
                        "start": {
                          "line": 18,
                          "column": 8
                        },
                        "end": {
                          "line": 18,
                          "column": 46
                        }
                      },
                      "test": {
                        "type": "MemberExpression",
                        "start": 798,
                        "end": 823,
                        "loc": {
                          "start": {
                            "line": 18,
                            "column": 12
                          },
                          "end": {
                            "line": 18,
                            "column": 37
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 798,
                          "end": 801,
                          "loc": {
                            "start": {
                              "line": 18,
                              "column": 12
                            },
                            "end": {
                              "line": 18,
                              "column": 15
                            }
                          },
                          "name": "obj"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 802,
                          "end": 823,
                          "loc": {
                            "start": {
                              "line": 18,
                              "column": 16
                            },
                            "end": {
                              "line": 18,
                              "column": 37
                            }
                          },
                          "name": "auxiliaryConstruction"
                        },
                        "computed": false
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 825,
                        "end": 832,
                        "loc": {
                          "start": {
                            "line": 18,
                            "column": 39
                          },
                          "end": {
                            "line": 18,
                            "column": 46
                          }
                        },
                        "argument": null
                      },
                      "alternate": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 842,
                      "end": 1047,
                      "loc": {
                        "start": {
                          "line": 19,
                          "column": 8
                        },
                        "end": {
                          "line": 25,
                          "column": 10
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 846,
                          "end": 1046,
                          "loc": {
                            "start": {
                              "line": 19,
                              "column": 12
                            },
                            "end": {
                              "line": 25,
                              "column": 9
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 846,
                            "end": 854,
                            "loc": {
                              "start": {
                                "line": 19,
                                "column": 12
                              },
                              "end": {
                                "line": 19,
                                "column": 20
                              }
                            },
                            "name": "material"
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 857,
                            "end": 1046,
                            "loc": {
                              "start": {
                                "line": 19,
                                "column": 23
                              },
                              "end": {
                                "line": 25,
                                "column": 9
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 861,
                              "end": 884,
                              "loc": {
                                "start": {
                                  "line": 19,
                                  "column": 27
                                },
                                "end": {
                                  "line": 19,
                                  "column": 50
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 861,
                                "end": 866,
                                "loc": {
                                  "start": {
                                    "line": 19,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 19,
                                    "column": 32
                                  }
                                },
                                "name": "THREE"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 867,
                                "end": 884,
                                "loc": {
                                  "start": {
                                    "line": 19,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 19,
                                    "column": 50
                                  }
                                },
                                "name": "LineBasicMaterial"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "ObjectExpression",
                                "start": 899,
                                "end": 1035,
                                "loc": {
                                  "start": {
                                    "line": 20,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 24,
                                    "column": 13
                                  }
                                },
                                "properties": [
                                  {
                                    "type": "Property",
                                    "start": 918,
                                    "end": 953,
                                    "loc": {
                                      "start": {
                                        "line": 21,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 21,
                                        "column": 51
                                      }
                                    },
                                    "method": false,
                                    "shorthand": false,
                                    "computed": false,
                                    "key": {
                                      "type": "Identifier",
                                      "start": 918,
                                      "end": 923,
                                      "loc": {
                                        "start": {
                                          "line": 21,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 21,
                                          "column": 21
                                        }
                                      },
                                      "name": "color"
                                    },
                                    "value": {
                                      "type": "CallExpression",
                                      "start": 925,
                                      "end": 953,
                                      "loc": {
                                        "start": {
                                          "line": 21,
                                          "column": 23
                                        },
                                        "end": {
                                          "line": 21,
                                          "column": 51
                                        }
                                      },
                                      "callee": {
                                        "type": "Identifier",
                                        "start": 925,
                                        "end": 933,
                                        "loc": {
                                          "start": {
                                            "line": 21,
                                            "column": 23
                                          },
                                          "end": {
                                            "line": 21,
                                            "column": 31
                                          }
                                        },
                                        "name": "getColor"
                                      },
                                      "arguments": [
                                        {
                                          "type": "MemberExpression",
                                          "start": 934,
                                          "end": 945,
                                          "loc": {
                                            "start": {
                                              "line": 21,
                                              "column": 32
                                            },
                                            "end": {
                                              "line": 21,
                                              "column": 43
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 934,
                                            "end": 938,
                                            "loc": {
                                              "start": {
                                                "line": 21,
                                                "column": 32
                                              },
                                              "end": {
                                                "line": 21,
                                                "column": 36
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 939,
                                            "end": 945,
                                            "loc": {
                                              "start": {
                                                "line": 21,
                                                "column": 37
                                              },
                                              "end": {
                                                "line": 21,
                                                "column": 43
                                              }
                                            },
                                            "name": "parent"
                                          },
                                          "computed": false
                                        },
                                        {
                                          "type": "Literal",
                                          "start": 947,
                                          "end": 952,
                                          "loc": {
                                            "start": {
                                              "line": 21,
                                              "column": 45
                                            },
                                            "end": {
                                              "line": 21,
                                              "column": 50
                                            }
                                          },
                                          "value": false,
                                          "rawValue": false,
                                          "raw": "false"
                                        }
                                      ]
                                    },
                                    "kind": "init"
                                  },
                                  {
                                    "type": "Property",
                                    "start": 972,
                                    "end": 989,
                                    "loc": {
                                      "start": {
                                        "line": 22,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 22,
                                        "column": 33
                                      }
                                    },
                                    "method": false,
                                    "shorthand": false,
                                    "computed": false,
                                    "key": {
                                      "type": "Identifier",
                                      "start": 972,
                                      "end": 983,
                                      "loc": {
                                        "start": {
                                          "line": 22,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 22,
                                          "column": 27
                                        }
                                      },
                                      "name": "transparent"
                                    },
                                    "value": {
                                      "type": "Literal",
                                      "start": 985,
                                      "end": 989,
                                      "loc": {
                                        "start": {
                                          "line": 22,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 22,
                                          "column": 33
                                        }
                                      },
                                      "value": true,
                                      "rawValue": true,
                                      "raw": "true"
                                    },
                                    "kind": "init"
                                  },
                                  {
                                    "type": "Property",
                                    "start": 1008,
                                    "end": 1020,
                                    "loc": {
                                      "start": {
                                        "line": 23,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 23,
                                        "column": 28
                                      }
                                    },
                                    "method": false,
                                    "shorthand": false,
                                    "computed": false,
                                    "key": {
                                      "type": "Identifier",
                                      "start": 1008,
                                      "end": 1015,
                                      "loc": {
                                        "start": {
                                          "line": 23,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 23,
                                          "column": 23
                                        }
                                      },
                                      "name": "opacity"
                                    },
                                    "value": {
                                      "type": "Literal",
                                      "start": 1017,
                                      "end": 1020,
                                      "loc": {
                                        "start": {
                                          "line": 23,
                                          "column": 25
                                        },
                                        "end": {
                                          "line": 23,
                                          "column": 28
                                        }
                                      },
                                      "value": 0.3,
                                      "rawValue": 0.3,
                                      "raw": "0.3"
                                    },
                                    "kind": "init"
                                  }
                                ]
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 1057,
                      "end": 1099,
                      "loc": {
                        "start": {
                          "line": 26,
                          "column": 8
                        },
                        "end": {
                          "line": 26,
                          "column": 50
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 1061,
                          "end": 1098,
                          "loc": {
                            "start": {
                              "line": 26,
                              "column": 12
                            },
                            "end": {
                              "line": 26,
                              "column": 49
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 1061,
                            "end": 1069,
                            "loc": {
                              "start": {
                                "line": 26,
                                "column": 12
                              },
                              "end": {
                                "line": 26,
                                "column": 20
                              }
                            },
                            "name": "geometry"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 1072,
                            "end": 1098,
                            "loc": {
                              "start": {
                                "line": 26,
                                "column": 23
                              },
                              "end": {
                                "line": 26,
                                "column": 49
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 1072,
                              "end": 1096,
                              "loc": {
                                "start": {
                                  "line": 26,
                                  "column": 23
                                },
                                "end": {
                                  "line": 26,
                                  "column": 47
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 1072,
                                "end": 1075,
                                "loc": {
                                  "start": {
                                    "line": 26,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 26,
                                    "column": 26
                                  }
                                },
                                "name": "obj"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 1076,
                                "end": 1096,
                                "loc": {
                                  "start": {
                                    "line": 26,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 26,
                                    "column": 47
                                  }
                                },
                                "name": "getAuxiliaryGeometry"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 1109,
                      "end": 1190,
                      "loc": {
                        "start": {
                          "line": 27,
                          "column": 8
                        },
                        "end": {
                          "line": 27,
                          "column": 89
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 1113,
                          "end": 1189,
                          "loc": {
                            "start": {
                              "line": 27,
                              "column": 12
                            },
                            "end": {
                              "line": 27,
                              "column": 88
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 1113,
                            "end": 1134,
                            "loc": {
                              "start": {
                                "line": 27,
                                "column": 12
                              },
                              "end": {
                                "line": 27,
                                "column": 33
                              }
                            },
                            "name": "auxiliaryConstruction"
                          },
                          "init": {
                            "type": "ConditionalExpression",
                            "start": 1137,
                            "end": 1189,
                            "loc": {
                              "start": {
                                "line": 27,
                                "column": 36
                              },
                              "end": {
                                "line": 27,
                                "column": 88
                              }
                            },
                            "test": {
                              "type": "Identifier",
                              "start": 1137,
                              "end": 1145,
                              "loc": {
                                "start": {
                                  "line": 27,
                                  "column": 36
                                },
                                "end": {
                                  "line": 27,
                                  "column": 44
                                }
                              },
                              "name": "geometry"
                            },
                            "consequent": {
                              "type": "NewExpression",
                              "start": 1148,
                              "end": 1182,
                              "loc": {
                                "start": {
                                  "line": 27,
                                  "column": 47
                                },
                                "end": {
                                  "line": 27,
                                  "column": 81
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 1152,
                                "end": 1162,
                                "loc": {
                                  "start": {
                                    "line": 27,
                                    "column": 51
                                  },
                                  "end": {
                                    "line": 27,
                                    "column": 61
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 1152,
                                  "end": 1157,
                                  "loc": {
                                    "start": {
                                      "line": 27,
                                      "column": 51
                                    },
                                    "end": {
                                      "line": 27,
                                      "column": 56
                                    }
                                  },
                                  "name": "THREE"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 1158,
                                  "end": 1162,
                                  "loc": {
                                    "start": {
                                      "line": 27,
                                      "column": 57
                                    },
                                    "end": {
                                      "line": 27,
                                      "column": 61
                                    }
                                  },
                                  "name": "Line"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 1163,
                                  "end": 1171,
                                  "loc": {
                                    "start": {
                                      "line": 27,
                                      "column": 62
                                    },
                                    "end": {
                                      "line": 27,
                                      "column": 70
                                    }
                                  },
                                  "name": "geometry"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 1173,
                                  "end": 1181,
                                  "loc": {
                                    "start": {
                                      "line": 27,
                                      "column": 72
                                    },
                                    "end": {
                                      "line": 27,
                                      "column": 80
                                    }
                                  },
                                  "name": "material"
                                }
                              ]
                            },
                            "alternate": {
                              "type": "Literal",
                              "start": 1185,
                              "end": 1189,
                              "loc": {
                                "start": {
                                  "line": 27,
                                  "column": 84
                                },
                                "end": {
                                  "line": 27,
                                  "column": 88
                                }
                              },
                              "value": null,
                              "rawValue": null,
                              "raw": "null"
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 1200,
                      "end": 1250,
                      "loc": {
                        "start": {
                          "line": 28,
                          "column": 8
                        },
                        "end": {
                          "line": 28,
                          "column": 58
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 1200,
                        "end": 1249,
                        "loc": {
                          "start": {
                            "line": 28,
                            "column": 8
                          },
                          "end": {
                            "line": 28,
                            "column": 57
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 1200,
                          "end": 1225,
                          "loc": {
                            "start": {
                              "line": 28,
                              "column": 8
                            },
                            "end": {
                              "line": 28,
                              "column": 33
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 1200,
                            "end": 1203,
                            "loc": {
                              "start": {
                                "line": 28,
                                "column": 8
                              },
                              "end": {
                                "line": 28,
                                "column": 11
                              }
                            },
                            "name": "obj"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1204,
                            "end": 1225,
                            "loc": {
                              "start": {
                                "line": 28,
                                "column": 12
                              },
                              "end": {
                                "line": 28,
                                "column": 33
                              }
                            },
                            "name": "auxiliaryConstruction"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Identifier",
                          "start": 1228,
                          "end": 1249,
                          "loc": {
                            "start": {
                              "line": 28,
                              "column": 36
                            },
                            "end": {
                              "line": 28,
                              "column": 57
                            }
                          },
                          "name": "auxiliaryConstruction"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 1260,
                      "end": 1352,
                      "loc": {
                        "start": {
                          "line": 29,
                          "column": 8
                        },
                        "end": {
                          "line": 29,
                          "column": 100
                        }
                      },
                      "expression": {
                        "type": "LogicalExpression",
                        "start": 1260,
                        "end": 1351,
                        "loc": {
                          "start": {
                            "line": 29,
                            "column": 8
                          },
                          "end": {
                            "line": 29,
                            "column": 99
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 1260,
                          "end": 1285,
                          "loc": {
                            "start": {
                              "line": 29,
                              "column": 8
                            },
                            "end": {
                              "line": 29,
                              "column": 33
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 1260,
                            "end": 1263,
                            "loc": {
                              "start": {
                                "line": 29,
                                "column": 8
                              },
                              "end": {
                                "line": 29,
                                "column": 11
                              }
                            },
                            "name": "obj"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1264,
                            "end": 1285,
                            "loc": {
                              "start": {
                                "line": 29,
                                "column": 12
                              },
                              "end": {
                                "line": 29,
                                "column": 33
                              }
                            },
                            "name": "auxiliaryConstruction"
                          },
                          "computed": false
                        },
                        "operator": "&&",
                        "right": {
                          "type": "CallExpression",
                          "start": 1289,
                          "end": 1351,
                          "loc": {
                            "start": {
                              "line": 29,
                              "column": 37
                            },
                            "end": {
                              "line": 29,
                              "column": 99
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 1289,
                            "end": 1328,
                            "loc": {
                              "start": {
                                "line": 29,
                                "column": 37
                              },
                              "end": {
                                "line": 29,
                                "column": 76
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 1289,
                              "end": 1323,
                              "loc": {
                                "start": {
                                  "line": 29,
                                  "column": 37
                                },
                                "end": {
                                  "line": 29,
                                  "column": 71
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 1289,
                                "end": 1314,
                                "loc": {
                                  "start": {
                                    "line": 29,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 29,
                                    "column": 62
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 1289,
                                  "end": 1292,
                                  "loc": {
                                    "start": {
                                      "line": 29,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 29,
                                      "column": 40
                                    }
                                  },
                                  "name": "obj"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 1293,
                                  "end": 1314,
                                  "loc": {
                                    "start": {
                                      "line": 29,
                                      "column": 41
                                    },
                                    "end": {
                                      "line": 29,
                                      "column": 62
                                    }
                                  },
                                  "name": "auxiliaryConstruction"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 1315,
                                "end": 1323,
                                "loc": {
                                  "start": {
                                    "line": 29,
                                    "column": 63
                                  },
                                  "end": {
                                    "line": 29,
                                    "column": 71
                                  }
                                },
                                "name": "position"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 1324,
                              "end": 1328,
                              "loc": {
                                "start": {
                                  "line": 29,
                                  "column": 72
                                },
                                "end": {
                                  "line": 29,
                                  "column": 76
                                }
                              },
                              "name": "copy"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "MemberExpression",
                              "start": 1329,
                              "end": 1350,
                              "loc": {
                                "start": {
                                  "line": 29,
                                  "column": 77
                                },
                                "end": {
                                  "line": 29,
                                  "column": 98
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 1329,
                                "end": 1341,
                                "loc": {
                                  "start": {
                                    "line": 29,
                                    "column": 77
                                  },
                                  "end": {
                                    "line": 29,
                                    "column": 89
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 1329,
                                  "end": 1332,
                                  "loc": {
                                    "start": {
                                      "line": 29,
                                      "column": 77
                                    },
                                    "end": {
                                      "line": 29,
                                      "column": 80
                                    }
                                  },
                                  "name": "obj"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 1333,
                                  "end": 1341,
                                  "loc": {
                                    "start": {
                                      "line": 29,
                                      "column": 81
                                    },
                                    "end": {
                                      "line": 29,
                                      "column": 89
                                    }
                                  },
                                  "name": "interact"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 1342,
                                "end": 1350,
                                "loc": {
                                  "start": {
                                    "line": 29,
                                    "column": 90
                                  },
                                  "end": {
                                    "line": 29,
                                    "column": 98
                                  }
                                },
                                "name": "position"
                              },
                              "computed": false
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "IfStatement",
                      "start": 1362,
                      "end": 1432,
                      "loc": {
                        "start": {
                          "line": 30,
                          "column": 8
                        },
                        "end": {
                          "line": 30,
                          "column": 78
                        }
                      },
                      "test": {
                        "type": "Identifier",
                        "start": 1366,
                        "end": 1387,
                        "loc": {
                          "start": {
                            "line": 30,
                            "column": 12
                          },
                          "end": {
                            "line": 30,
                            "column": 33
                          }
                        },
                        "name": "auxiliaryConstruction"
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 1389,
                        "end": 1432,
                        "loc": {
                          "start": {
                            "line": 30,
                            "column": 35
                          },
                          "end": {
                            "line": 30,
                            "column": 78
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 1389,
                          "end": 1431,
                          "loc": {
                            "start": {
                              "line": 30,
                              "column": 35
                            },
                            "end": {
                              "line": 30,
                              "column": 77
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 1389,
                            "end": 1408,
                            "loc": {
                              "start": {
                                "line": 30,
                                "column": 35
                              },
                              "end": {
                                "line": 30,
                                "column": 54
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 1389,
                              "end": 1395,
                              "loc": {
                                "start": {
                                  "line": 30,
                                  "column": 35
                                },
                                "end": {
                                  "line": 30,
                                  "column": 41
                                }
                              },
                              "name": "sketch"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 1396,
                              "end": 1408,
                              "loc": {
                                "start": {
                                  "line": 30,
                                  "column": 42
                                },
                                "end": {
                                  "line": 30,
                                  "column": 54
                                }
                              },
                              "name": "addAuxObject"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 1409,
                              "end": 1430,
                              "loc": {
                                "start": {
                                  "line": 30,
                                  "column": 55
                                },
                                "end": {
                                  "line": 30,
                                  "column": 76
                                }
                              },
                              "name": "auxiliaryConstruction"
                            }
                          ]
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 1442,
                      "end": 1461,
                      "loc": {
                        "start": {
                          "line": 31,
                          "column": 8
                        },
                        "end": {
                          "line": 31,
                          "column": 27
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 1442,
                        "end": 1460,
                        "loc": {
                          "start": {
                            "line": 31,
                            "column": 8
                          },
                          "end": {
                            "line": 31,
                            "column": 26
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 1442,
                          "end": 1453,
                          "loc": {
                            "start": {
                              "line": 31,
                              "column": 8
                            },
                            "end": {
                              "line": 31,
                              "column": 19
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 1442,
                            "end": 1445,
                            "loc": {
                              "start": {
                                "line": 31,
                                "column": 8
                              },
                              "end": {
                                "line": 31,
                                "column": 11
                              }
                            },
                            "name": "obj"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1446,
                            "end": 1453,
                            "loc": {
                              "start": {
                                "line": 31,
                                "column": 12
                              },
                              "end": {
                                "line": 31,
                                "column": 19
                              }
                            },
                            "name": "hovered"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 1456,
                          "end": 1460,
                          "loc": {
                            "start": {
                              "line": 31,
                              "column": 22
                            },
                            "end": {
                              "line": 31,
                              "column": 26
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          {
            "type": "ExpressionStatement",
            "start": 1475,
            "end": 1964,
            "loc": {
              "start": {
                "line": 33,
                "column": 4
              },
              "end": {
                "line": 42,
                "column": 6
              }
            },
            "expression": {
              "type": "AssignmentExpression",
              "start": 1475,
              "end": 1963,
              "loc": {
                "start": {
                  "line": 33,
                  "column": 4
                },
                "end": {
                  "line": 42,
                  "column": 5
                }
              },
              "operator": "=",
              "left": {
                "type": "MemberExpression",
                "start": 1475,
                "end": 1487,
                "loc": {
                  "start": {
                    "line": 33,
                    "column": 4
                  },
                  "end": {
                    "line": 33,
                    "column": 16
                  }
                },
                "object": {
                  "type": "ThisExpression",
                  "start": 1475,
                  "end": 1479,
                  "loc": {
                    "start": {
                      "line": 33,
                      "column": 4
                    },
                    "end": {
                      "line": 33,
                      "column": 8
                    }
                  }
                },
                "property": {
                  "type": "Identifier",
                  "start": 1480,
                  "end": 1487,
                  "loc": {
                    "start": {
                      "line": 33,
                      "column": 9
                    },
                    "end": {
                      "line": 33,
                      "column": 16
                    }
                  },
                  "name": "unhover"
                },
                "computed": false
              },
              "right": {
                "type": "FunctionExpression",
                "start": 1490,
                "end": 1963,
                "loc": {
                  "start": {
                    "line": 33,
                    "column": 19
                  },
                  "end": {
                    "line": 42,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 1501,
                  "end": 1963,
                  "loc": {
                    "start": {
                      "line": 33,
                      "column": 30
                    },
                    "end": {
                      "line": 42,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 1512,
                      "end": 1580,
                      "loc": {
                        "start": {
                          "line": 34,
                          "column": 8
                        },
                        "end": {
                          "line": 34,
                          "column": 76
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 1512,
                        "end": 1579,
                        "loc": {
                          "start": {
                            "line": 34,
                            "column": 8
                          },
                          "end": {
                            "line": 34,
                            "column": 75
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 1512,
                          "end": 1531,
                          "loc": {
                            "start": {
                              "line": 34,
                              "column": 8
                            },
                            "end": {
                              "line": 34,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 1512,
                            "end": 1525,
                            "loc": {
                              "start": {
                                "line": 34,
                                "column": 8
                              },
                              "end": {
                                "line": 34,
                                "column": 21
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 1512,
                              "end": 1516,
                              "loc": {
                                "start": {
                                  "line": 34,
                                  "column": 8
                                },
                                "end": {
                                  "line": 34,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 1517,
                              "end": 1525,
                              "loc": {
                                "start": {
                                  "line": 34,
                                  "column": 13
                                },
                                "end": {
                                  "line": 34,
                                  "column": 21
                                }
                              },
                              "name": "material"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1526,
                            "end": 1531,
                            "loc": {
                              "start": {
                                "line": 34,
                                "column": 22
                              },
                              "end": {
                                "line": 34,
                                "column": 27
                              }
                            },
                            "name": "color"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 1534,
                          "end": 1579,
                          "loc": {
                            "start": {
                              "line": 34,
                              "column": 30
                            },
                            "end": {
                              "line": 34,
                              "column": 75
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 1538,
                            "end": 1549,
                            "loc": {
                              "start": {
                                "line": 34,
                                "column": 34
                              },
                              "end": {
                                "line": 34,
                                "column": 45
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 1538,
                              "end": 1543,
                              "loc": {
                                "start": {
                                  "line": 34,
                                  "column": 34
                                },
                                "end": {
                                  "line": 34,
                                  "column": 39
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 1544,
                              "end": 1549,
                              "loc": {
                                "start": {
                                  "line": 34,
                                  "column": 40
                                },
                                "end": {
                                  "line": 34,
                                  "column": 45
                                }
                              },
                              "name": "Color"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "CallExpression",
                              "start": 1550,
                              "end": 1578,
                              "loc": {
                                "start": {
                                  "line": 34,
                                  "column": 46
                                },
                                "end": {
                                  "line": 34,
                                  "column": 74
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 1550,
                                "end": 1558,
                                "loc": {
                                  "start": {
                                    "line": 34,
                                    "column": 46
                                  },
                                  "end": {
                                    "line": 34,
                                    "column": 54
                                  }
                                },
                                "name": "getColor"
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 1559,
                                  "end": 1570,
                                  "loc": {
                                    "start": {
                                      "line": 34,
                                      "column": 55
                                    },
                                    "end": {
                                      "line": 34,
                                      "column": 66
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 1559,
                                    "end": 1563,
                                    "loc": {
                                      "start": {
                                        "line": 34,
                                        "column": 55
                                      },
                                      "end": {
                                        "line": 34,
                                        "column": 59
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 1564,
                                    "end": 1570,
                                    "loc": {
                                      "start": {
                                        "line": 34,
                                        "column": 60
                                      },
                                      "end": {
                                        "line": 34,
                                        "column": 66
                                      }
                                    },
                                    "name": "parent"
                                  },
                                  "computed": false
                                },
                                {
                                  "type": "Literal",
                                  "start": 1572,
                                  "end": 1577,
                                  "loc": {
                                    "start": {
                                      "line": 34,
                                      "column": 68
                                    },
                                    "end": {
                                      "line": 34,
                                      "column": 73
                                    }
                                  },
                                  "value": false,
                                  "rawValue": false,
                                  "raw": "false"
                                }
                              ]
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 1590,
                      "end": 1612,
                      "loc": {
                        "start": {
                          "line": 35,
                          "column": 8
                        },
                        "end": {
                          "line": 35,
                          "column": 30
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 1594,
                          "end": 1611,
                          "loc": {
                            "start": {
                              "line": 35,
                              "column": 12
                            },
                            "end": {
                              "line": 35,
                              "column": 29
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 1594,
                            "end": 1597,
                            "loc": {
                              "start": {
                                "line": 35,
                                "column": 12
                              },
                              "end": {
                                "line": 35,
                                "column": 15
                              }
                            },
                            "name": "obj"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 1600,
                            "end": 1611,
                            "loc": {
                              "start": {
                                "line": 35,
                                "column": 18
                              },
                              "end": {
                                "line": 35,
                                "column": 29
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 1600,
                              "end": 1604,
                              "loc": {
                                "start": {
                                  "line": 35,
                                  "column": 18
                                },
                                "end": {
                                  "line": 35,
                                  "column": 22
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 1605,
                              "end": 1611,
                              "loc": {
                                "start": {
                                  "line": 35,
                                  "column": 23
                                },
                                "end": {
                                  "line": 35,
                                  "column": 29
                                }
                              },
                              "name": "parent"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 1622,
                      "end": 1956,
                      "loc": {
                        "start": {
                          "line": 36,
                          "column": 8
                        },
                        "end": {
                          "line": 41,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "MemberExpression",
                        "start": 1626,
                        "end": 1651,
                        "loc": {
                          "start": {
                            "line": 36,
                            "column": 12
                          },
                          "end": {
                            "line": 36,
                            "column": 37
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 1626,
                          "end": 1629,
                          "loc": {
                            "start": {
                              "line": 36,
                              "column": 12
                            },
                            "end": {
                              "line": 36,
                              "column": 15
                            }
                          },
                          "name": "obj"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 1630,
                          "end": 1651,
                          "loc": {
                            "start": {
                              "line": 36,
                              "column": 16
                            },
                            "end": {
                              "line": 36,
                              "column": 37
                            }
                          },
                          "name": "auxiliaryConstruction"
                        },
                        "computed": false
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 1653,
                        "end": 1956,
                        "loc": {
                          "start": {
                            "line": 36,
                            "column": 39
                          },
                          "end": {
                            "line": 41,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 1769,
                            "end": 1829,
                            "loc": {
                              "start": {
                                "line": 38,
                                "column": 12
                              },
                              "end": {
                                "line": 38,
                                "column": 72
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 1773,
                                "end": 1828,
                                "loc": {
                                  "start": {
                                    "line": 38,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 38,
                                    "column": 71
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 1773,
                                  "end": 1779,
                                  "loc": {
                                    "start": {
                                      "line": 38,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 38,
                                      "column": 22
                                    }
                                  },
                                  "name": "sketch",
                                  "leadingComments": null
                                },
                                "init": {
                                  "type": "CallExpression",
                                  "start": 1782,
                                  "end": 1828,
                                  "loc": {
                                    "start": {
                                      "line": 38,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 38,
                                      "column": 71
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 1782,
                                    "end": 1801,
                                    "loc": {
                                      "start": {
                                        "line": 38,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 38,
                                        "column": 44
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 1782,
                                      "end": 1788,
                                      "loc": {
                                        "start": {
                                          "line": 38,
                                          "column": 25
                                        },
                                        "end": {
                                          "line": 38,
                                          "column": 31
                                        }
                                      },
                                      "name": "Sketch"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 1789,
                                      "end": 1801,
                                      "loc": {
                                        "start": {
                                          "line": 38,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 38,
                                          "column": 44
                                        }
                                      },
                                      "name": "FindSketchOf"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "MemberExpression",
                                      "start": 1802,
                                      "end": 1827,
                                      "loc": {
                                        "start": {
                                          "line": 38,
                                          "column": 45
                                        },
                                        "end": {
                                          "line": 38,
                                          "column": 70
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 1802,
                                        "end": 1805,
                                        "loc": {
                                          "start": {
                                            "line": 38,
                                            "column": 45
                                          },
                                          "end": {
                                            "line": 38,
                                            "column": 48
                                          }
                                        },
                                        "name": "obj"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 1806,
                                        "end": 1827,
                                        "loc": {
                                          "start": {
                                            "line": 38,
                                            "column": 49
                                          },
                                          "end": {
                                            "line": 38,
                                            "column": 70
                                          }
                                        },
                                        "name": "auxiliaryConstruction"
                                      },
                                      "computed": false
                                    }
                                  ]
                                },
                                "leadingComments": null
                              }
                            ],
                            "kind": "var",
                            "leadingComments": [
                              {
                                "type": "CommentLine",
                                "value": " obj may have been removed from sketch, so call FindSketchOf on auxiliaryConstruction",
                                "start": 1668,
                                "end": 1755,
                                "loc": {
                                  "start": {
                                    "line": 37,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 37,
                                    "column": 99
                                  }
                                },
                                "range": [
                                  1668,
                                  1755
                                ]
                              }
                            ]
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 1843,
                            "end": 1893,
                            "loc": {
                              "start": {
                                "line": 39,
                                "column": 12
                              },
                              "end": {
                                "line": 39,
                                "column": 62
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 1843,
                              "end": 1892,
                              "loc": {
                                "start": {
                                  "line": 39,
                                  "column": 12
                                },
                                "end": {
                                  "line": 39,
                                  "column": 61
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 1843,
                                "end": 1865,
                                "loc": {
                                  "start": {
                                    "line": 39,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 39,
                                    "column": 34
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 1843,
                                  "end": 1849,
                                  "loc": {
                                    "start": {
                                      "line": 39,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 39,
                                      "column": 18
                                    }
                                  },
                                  "name": "sketch"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 1850,
                                  "end": 1865,
                                  "loc": {
                                    "start": {
                                      "line": 39,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 39,
                                      "column": 34
                                    }
                                  },
                                  "name": "removeAuxObject"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 1866,
                                  "end": 1891,
                                  "loc": {
                                    "start": {
                                      "line": 39,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 39,
                                      "column": 60
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 1866,
                                    "end": 1869,
                                    "loc": {
                                      "start": {
                                        "line": 39,
                                        "column": 35
                                      },
                                      "end": {
                                        "line": 39,
                                        "column": 38
                                      }
                                    },
                                    "name": "obj"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 1870,
                                    "end": 1891,
                                    "loc": {
                                      "start": {
                                        "line": 39,
                                        "column": 39
                                      },
                                      "end": {
                                        "line": 39,
                                        "column": 60
                                      }
                                    },
                                    "name": "auxiliaryConstruction"
                                  },
                                  "computed": false
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 1907,
                            "end": 1945,
                            "loc": {
                              "start": {
                                "line": 40,
                                "column": 12
                              },
                              "end": {
                                "line": 40,
                                "column": 50
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 1907,
                              "end": 1944,
                              "loc": {
                                "start": {
                                  "line": 40,
                                  "column": 12
                                },
                                "end": {
                                  "line": 40,
                                  "column": 49
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 1907,
                                "end": 1932,
                                "loc": {
                                  "start": {
                                    "line": 40,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 40,
                                    "column": 37
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 1907,
                                  "end": 1910,
                                  "loc": {
                                    "start": {
                                      "line": 40,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 40,
                                      "column": 15
                                    }
                                  },
                                  "name": "obj"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 1911,
                                  "end": 1932,
                                  "loc": {
                                    "start": {
                                      "line": 40,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 40,
                                      "column": 37
                                    }
                                  },
                                  "name": "auxiliaryConstruction"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "Identifier",
                                "start": 1935,
                                "end": 1944,
                                "loc": {
                                  "start": {
                                    "line": 40,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 40,
                                    "column": 49
                                  }
                                },
                                "name": "undefined"
                              }
                            }
                          }
                        ]
                      },
                      "alternate": null
                    }
                  ]
                }
              }
            }
          }
        ],
        "trailingComments": null
      },
      "leadingComments": [
        {
          "type": "CommentLine",
          "value": "note: invisible geometry is not used anymore...",
          "start": 278,
          "end": 327,
          "loc": {
            "start": {
              "line": 8,
              "column": 0
            },
            "end": {
              "line": 8,
              "column": 49
            }
          },
          "range": [
            278,
            327
          ]
        },
        {
          "type": "CommentLine",
          "value": "var interactMaterial = new THREE.MeshBasicMaterial({color: 0xff0000, visible: false, side: THREE.DoubleSide});",
          "start": 329,
          "end": 441,
          "loc": {
            "start": {
              "line": 9,
              "column": 0
            },
            "end": {
              "line": 9,
              "column": 112
            }
          },
          "range": [
            329,
            441
          ]
        },
        {
          "type": "CommentLine",
          "value": " mixin for geometric objects that can be highlighted",
          "start": 445,
          "end": 499,
          "loc": {
            "start": {
              "line": 11,
              "column": 0
            },
            "end": {
              "line": 11,
              "column": 54
            }
          },
          "range": [
            445,
            499
          ]
        }
      ],
      "trailingComments": [
        {
          "type": "CommentLine",
          "value": " prototype for all interact meshes",
          "start": 1971,
          "end": 2007,
          "loc": {
            "start": {
              "line": 45,
              "column": 0
            },
            "end": {
              "line": 45,
              "column": 36
            }
          },
          "range": [
            1971,
            2007
          ]
        }
      ]
    },
    {
      "type": "ClassDeclaration",
      "start": 2009,
      "end": 2133,
      "loc": {
        "start": {
          "line": 46,
          "column": 0
        },
        "end": {
          "line": 50,
          "column": 1
        }
      },
      "id": {
        "type": "Identifier",
        "start": 2015,
        "end": 2027,
        "loc": {
          "start": {
            "line": 46,
            "column": 6
          },
          "end": {
            "line": 46,
            "column": 18
          }
        },
        "name": "InteractMesh",
        "leadingComments": null
      },
      "superClass": {
        "type": "MemberExpression",
        "start": 2036,
        "end": 2046,
        "loc": {
          "start": {
            "line": 46,
            "column": 27
          },
          "end": {
            "line": 46,
            "column": 37
          }
        },
        "object": {
          "type": "Identifier",
          "start": 2036,
          "end": 2041,
          "loc": {
            "start": {
              "line": 46,
              "column": 27
            },
            "end": {
              "line": 46,
              "column": 32
            }
          },
          "name": "THREE"
        },
        "property": {
          "type": "Identifier",
          "start": 2042,
          "end": 2046,
          "loc": {
            "start": {
              "line": 46,
              "column": 33
            },
            "end": {
              "line": 46,
              "column": 37
            }
          },
          "name": "Mesh"
        },
        "computed": false
      },
      "body": {
        "type": "ClassBody",
        "start": 2047,
        "end": 2133,
        "loc": {
          "start": {
            "line": 46,
            "column": 38
          },
          "end": {
            "line": 50,
            "column": 1
          }
        },
        "body": [
          {
            "type": "MethodDefinition",
            "start": 2054,
            "end": 2130,
            "loc": {
              "start": {
                "line": 47,
                "column": 4
              },
              "end": {
                "line": 49,
                "column": 5
              }
            },
            "computed": false,
            "key": {
              "type": "Identifier",
              "start": 2054,
              "end": 2065,
              "loc": {
                "start": {
                  "line": 47,
                  "column": 4
                },
                "end": {
                  "line": 47,
                  "column": 15
                }
              },
              "name": "constructor"
            },
            "static": false,
            "kind": "constructor",
            "value": {
              "type": "FunctionExpression",
              "start": 2065,
              "end": 2130,
              "loc": {
                "start": {
                  "line": 47,
                  "column": 15
                },
                "end": {
                  "line": 49,
                  "column": 5
                }
              },
              "id": null,
              "generator": false,
              "expression": false,
              "async": false,
              "params": [
                {
                  "type": "Identifier",
                  "start": 2066,
                  "end": 2074,
                  "loc": {
                    "start": {
                      "line": 47,
                      "column": 16
                    },
                    "end": {
                      "line": 47,
                      "column": 24
                    }
                  },
                  "name": "geometry"
                },
                {
                  "type": "Identifier",
                  "start": 2076,
                  "end": 2084,
                  "loc": {
                    "start": {
                      "line": 47,
                      "column": 26
                    },
                    "end": {
                      "line": 47,
                      "column": 34
                    }
                  },
                  "name": "material"
                }
              ],
              "body": {
                "type": "BlockStatement",
                "start": 2086,
                "end": 2130,
                "loc": {
                  "start": {
                    "line": 47,
                    "column": 36
                  },
                  "end": {
                    "line": 49,
                    "column": 5
                  }
                },
                "body": [
                  {
                    "type": "ExpressionStatement",
                    "start": 2097,
                    "end": 2123,
                    "loc": {
                      "start": {
                        "line": 48,
                        "column": 8
                      },
                      "end": {
                        "line": 48,
                        "column": 34
                      }
                    },
                    "expression": {
                      "type": "CallExpression",
                      "start": 2097,
                      "end": 2122,
                      "loc": {
                        "start": {
                          "line": 48,
                          "column": 8
                        },
                        "end": {
                          "line": 48,
                          "column": 33
                        }
                      },
                      "callee": {
                        "type": "Super",
                        "start": 2097,
                        "end": 2102,
                        "loc": {
                          "start": {
                            "line": 48,
                            "column": 8
                          },
                          "end": {
                            "line": 48,
                            "column": 13
                          }
                        }
                      },
                      "arguments": [
                        {
                          "type": "Identifier",
                          "start": 2103,
                          "end": 2111,
                          "loc": {
                            "start": {
                              "line": 48,
                              "column": 14
                            },
                            "end": {
                              "line": 48,
                              "column": 22
                            }
                          },
                          "name": "geometry"
                        },
                        {
                          "type": "Identifier",
                          "start": 2113,
                          "end": 2121,
                          "loc": {
                            "start": {
                              "line": 48,
                              "column": 24
                            },
                            "end": {
                              "line": 48,
                              "column": 32
                            }
                          },
                          "name": "material"
                        }
                      ]
                    }
                  }
                ]
              }
            }
          }
        ]
      },
      "leadingComments": [
        {
          "type": "CommentLine",
          "value": " prototype for all interact meshes",
          "start": 1971,
          "end": 2007,
          "loc": {
            "start": {
              "line": 45,
              "column": 0
            },
            "end": {
              "line": 45,
              "column": 36
            }
          },
          "range": [
            1971,
            2007
          ]
        }
      ]
    },
    {
      "type": "ExpressionStatement",
      "start": 2135,
      "end": 2182,
      "loc": {
        "start": {
          "line": 51,
          "column": 0
        },
        "end": {
          "line": 51,
          "column": 47
        }
      },
      "expression": {
        "type": "CallExpression",
        "start": 2135,
        "end": 2181,
        "loc": {
          "start": {
            "line": 51,
            "column": 0
          },
          "end": {
            "line": 51,
            "column": 46
          }
        },
        "callee": {
          "type": "MemberExpression",
          "start": 2135,
          "end": 2157,
          "loc": {
            "start": {
              "line": 51,
              "column": 0
            },
            "end": {
              "line": 51,
              "column": 22
            }
          },
          "object": {
            "type": "Identifier",
            "start": 2135,
            "end": 2152,
            "loc": {
              "start": {
                "line": 51,
                "column": 0
              },
              "end": {
                "line": 51,
                "column": 17
              }
            },
            "name": "meshHighlightable"
          },
          "property": {
            "type": "Identifier",
            "start": 2153,
            "end": 2157,
            "loc": {
              "start": {
                "line": 51,
                "column": 18
              },
              "end": {
                "line": 51,
                "column": 22
              }
            },
            "name": "call"
          },
          "computed": false
        },
        "arguments": [
          {
            "type": "MemberExpression",
            "start": 2158,
            "end": 2180,
            "loc": {
              "start": {
                "line": 51,
                "column": 23
              },
              "end": {
                "line": 51,
                "column": 45
              }
            },
            "object": {
              "type": "Identifier",
              "start": 2158,
              "end": 2170,
              "loc": {
                "start": {
                  "line": 51,
                  "column": 23
                },
                "end": {
                  "line": 51,
                  "column": 35
                }
              },
              "name": "InteractMesh"
            },
            "property": {
              "type": "Identifier",
              "start": 2171,
              "end": 2180,
              "loc": {
                "start": {
                  "line": 51,
                  "column": 36
                },
                "end": {
                  "line": 51,
                  "column": 45
                }
              },
              "name": "prototype"
            },
            "computed": false
          }
        ]
      },
      "trailingComments": [
        {
          "type": "CommentLine",
          "value": "=============================== Sketch.GeometricObject =================================",
          "start": 2186,
          "end": 2276,
          "loc": {
            "start": {
              "line": 53,
              "column": 0
            },
            "end": {
              "line": 53,
              "column": 90
            }
          },
          "range": [
            2186,
            2276
          ]
        },
        {
          "type": "Block",
          "value": "*\r\n * Each geometric objects has several update functions, here they are:\r\n * 1. updateGeometry(movedPoint)\r\n *   must be called after any child point is changed (i.e. line's endpoint or arc's center was moved)\r\n *   recalculates inner parameters of the geometry (if present, i.e. center, angles)\r\n * 2. updateSizes(owningView)\r\n *   must be called after camera or object has changed, and after any geometrical changes\r\n *   recalculates any required sizing data (i.e. `width` value)\r\n *   automatically generated by mixinPixelSizedGeometry\r\n * 3. updateVisualization()\r\n *   must be called after anything changes, which may influence visible representation of object\r\n *   updates or rebuilds a THREE.Mesh which visibly represent the object\r\n * Note that each update function depends on the data obtained from the previous steps.\r\n *\r\n * Here is general advice of how to call update functions:\r\n *   - call updateGeometry directly and only inside controls handlers (when smth is edited)\r\n *   - do not call other updates directly, just register each object with Sketcher.registerVisualization\r\n ",
          "start": 2278,
          "end": 3378,
          "loc": {
            "start": {
              "line": 54,
              "column": 0
            },
            "end": {
              "line": 71,
              "column": 3
            }
          },
          "range": [
            2278,
            3378
          ]
        }
      ]
    },
    {
      "type": "ExportNamedDeclaration",
      "start": 3380,
      "end": 4023,
      "loc": {
        "start": {
          "line": 72,
          "column": 0
        },
        "end": {
          "line": 89,
          "column": 1
        }
      },
      "declaration": {
        "type": "ClassDeclaration",
        "start": 3387,
        "end": 4023,
        "loc": {
          "start": {
            "line": 72,
            "column": 7
          },
          "end": {
            "line": 89,
            "column": 1
          }
        },
        "id": {
          "type": "Identifier",
          "start": 3393,
          "end": 3408,
          "loc": {
            "start": {
              "line": 72,
              "column": 13
            },
            "end": {
              "line": 72,
              "column": 28
            }
          },
          "name": "GeometricObject",
          "leadingComments": null
        },
        "superClass": {
          "type": "Identifier",
          "start": 3417,
          "end": 3431,
          "loc": {
            "start": {
              "line": 72,
              "column": 37
            },
            "end": {
              "line": 72,
              "column": 51
            }
          },
          "name": "ClassCadObject"
        },
        "body": {
          "type": "ClassBody",
          "start": 3432,
          "end": 4023,
          "loc": {
            "start": {
              "line": 72,
              "column": 52
            },
            "end": {
              "line": 89,
              "column": 1
            }
          },
          "body": [
            {
              "type": "MethodDefinition",
              "start": 3439,
              "end": 3953,
              "loc": {
                "start": {
                  "line": 73,
                  "column": 4
                },
                "end": {
                  "line": 84,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 3439,
                "end": 3450,
                "loc": {
                  "start": {
                    "line": 73,
                    "column": 4
                  },
                  "end": {
                    "line": 73,
                    "column": 15
                  }
                },
                "name": "constructor"
              },
              "static": false,
              "kind": "constructor",
              "value": {
                "type": "FunctionExpression",
                "start": 3450,
                "end": 3953,
                "loc": {
                  "start": {
                    "line": 73,
                    "column": 15
                  },
                  "end": {
                    "line": 84,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 3453,
                  "end": 3953,
                  "loc": {
                    "start": {
                      "line": 73,
                      "column": 18
                    },
                    "end": {
                      "line": 84,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 3464,
                      "end": 3472,
                      "loc": {
                        "start": {
                          "line": 74,
                          "column": 8
                        },
                        "end": {
                          "line": 74,
                          "column": 16
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 3464,
                        "end": 3471,
                        "loc": {
                          "start": {
                            "line": 74,
                            "column": 8
                          },
                          "end": {
                            "line": 74,
                            "column": 15
                          }
                        },
                        "callee": {
                          "type": "Super",
                          "start": 3464,
                          "end": 3469,
                          "loc": {
                            "start": {
                              "line": 74,
                              "column": 8
                            },
                            "end": {
                              "line": 74,
                              "column": 13
                            }
                          }
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3482,
                      "end": 3542,
                      "loc": {
                        "start": {
                          "line": 75,
                          "column": 8
                        },
                        "end": {
                          "line": 75,
                          "column": 68
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 3482,
                        "end": 3541,
                        "loc": {
                          "start": {
                            "line": 75,
                            "column": 8
                          },
                          "end": {
                            "line": 75,
                            "column": 67
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 3482,
                          "end": 3519,
                          "loc": {
                            "start": {
                              "line": 75,
                              "column": 8
                            },
                            "end": {
                              "line": 75,
                              "column": 45
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 3482,
                            "end": 3514,
                            "loc": {
                              "start": {
                                "line": 75,
                                "column": 8
                              },
                              "end": {
                                "line": 75,
                                "column": 40
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 3482,
                              "end": 3490,
                              "loc": {
                                "start": {
                                  "line": 75,
                                  "column": 8
                                },
                                "end": {
                                  "line": 75,
                                  "column": 16
                                }
                              },
                              "name": "Sketcher"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3491,
                              "end": 3514,
                              "loc": {
                                "start": {
                                  "line": 75,
                                  "column": 17
                                },
                                "end": {
                                  "line": 75,
                                  "column": 40
                                }
                              },
                              "name": "mixinPixelSizedGeometry"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3515,
                            "end": 3519,
                            "loc": {
                              "start": {
                                "line": 75,
                                "column": 41
                              },
                              "end": {
                                "line": 75,
                                "column": 45
                              }
                            },
                            "name": "call"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ThisExpression",
                            "start": 3520,
                            "end": 3524,
                            "loc": {
                              "start": {
                                "line": 75,
                                "column": 46
                              },
                              "end": {
                                "line": 75,
                                "column": 50
                              }
                            }
                          },
                          {
                            "type": "MemberExpression",
                            "start": 3526,
                            "end": 3540,
                            "loc": {
                              "start": {
                                "line": 75,
                                "column": 52
                              },
                              "end": {
                                "line": 75,
                                "column": 66
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 3526,
                              "end": 3530,
                              "loc": {
                                "start": {
                                  "line": 75,
                                  "column": 52
                                },
                                "end": {
                                  "line": 75,
                                  "column": 56
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3531,
                              "end": 3540,
                              "loc": {
                                "start": {
                                  "line": 75,
                                  "column": 57
                                },
                                "end": {
                                  "line": 75,
                                  "column": 66
                                }
                              },
                              "name": "thickness"
                            },
                            "computed": false
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3554,
                      "end": 3894,
                      "loc": {
                        "start": {
                          "line": 77,
                          "column": 8
                        },
                        "end": {
                          "line": 82,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3554,
                        "end": 3893,
                        "loc": {
                          "start": {
                            "line": 77,
                            "column": 8
                          },
                          "end": {
                            "line": 82,
                            "column": 10
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3554,
                          "end": 3579,
                          "loc": {
                            "start": {
                              "line": 77,
                              "column": 8
                            },
                            "end": {
                              "line": 77,
                              "column": 33
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 3554,
                            "end": 3558,
                            "loc": {
                              "start": {
                                "line": 77,
                                "column": 8
                              },
                              "end": {
                                "line": 77,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3559,
                            "end": 3579,
                            "loc": {
                              "start": {
                                "line": 77,
                                "column": 13
                              },
                              "end": {
                                "line": 77,
                                "column": 33
                              }
                            },
                            "name": "constraintsSubstrate"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 3583,
                          "end": 3893,
                          "loc": {
                            "start": {
                              "line": 77,
                              "column": 37
                            },
                            "end": {
                              "line": 82,
                              "column": 10
                            }
                          },
                          "callee": {
                            "type": "Identifier",
                            "start": 3587,
                            "end": 3599,
                            "loc": {
                              "start": {
                                "line": 77,
                                "column": 41
                              },
                              "end": {
                                "line": 77,
                                "column": 53
                              }
                            },
                            "name": "InteractMesh"
                          },
                          "arguments": [
                            {
                              "type": "NewExpression",
                              "start": 3600,
                              "end": 3630,
                              "loc": {
                                "start": {
                                  "line": 77,
                                  "column": 54
                                },
                                "end": {
                                  "line": 77,
                                  "column": 84
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 3604,
                                "end": 3621,
                                "loc": {
                                  "start": {
                                    "line": 77,
                                    "column": 58
                                  },
                                  "end": {
                                    "line": 77,
                                    "column": 75
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 3604,
                                  "end": 3609,
                                  "loc": {
                                    "start": {
                                      "line": 77,
                                      "column": 58
                                    },
                                    "end": {
                                      "line": 77,
                                      "column": 63
                                    }
                                  },
                                  "name": "THREE"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3610,
                                  "end": 3621,
                                  "loc": {
                                    "start": {
                                      "line": 77,
                                      "column": 64
                                    },
                                    "end": {
                                      "line": 77,
                                      "column": 75
                                    }
                                  },
                                  "name": "BoxGeometry"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 3622,
                                  "end": 3623,
                                  "loc": {
                                    "start": {
                                      "line": 77,
                                      "column": 76
                                    },
                                    "end": {
                                      "line": 77,
                                      "column": 77
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                },
                                {
                                  "type": "Literal",
                                  "start": 3625,
                                  "end": 3626,
                                  "loc": {
                                    "start": {
                                      "line": 77,
                                      "column": 79
                                    },
                                    "end": {
                                      "line": 77,
                                      "column": 80
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                },
                                {
                                  "type": "Literal",
                                  "start": 3628,
                                  "end": 3629,
                                  "loc": {
                                    "start": {
                                      "line": 77,
                                      "column": 82
                                    },
                                    "end": {
                                      "line": 77,
                                      "column": 83
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                }
                              ]
                            },
                            {
                              "type": "NewExpression",
                              "start": 3632,
                              "end": 3892,
                              "loc": {
                                "start": {
                                  "line": 77,
                                  "column": 86
                                },
                                "end": {
                                  "line": 82,
                                  "column": 9
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 3636,
                                "end": 3659,
                                "loc": {
                                  "start": {
                                    "line": 77,
                                    "column": 90
                                  },
                                  "end": {
                                    "line": 77,
                                    "column": 113
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 3636,
                                  "end": 3641,
                                  "loc": {
                                    "start": {
                                      "line": 77,
                                      "column": 90
                                    },
                                    "end": {
                                      "line": 77,
                                      "column": 95
                                    }
                                  },
                                  "name": "THREE"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3642,
                                  "end": 3659,
                                  "loc": {
                                    "start": {
                                      "line": 77,
                                      "column": 96
                                    },
                                    "end": {
                                      "line": 77,
                                      "column": 113
                                    }
                                  },
                                  "name": "MeshBasicMaterial"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ObjectExpression",
                                  "start": 3674,
                                  "end": 3881,
                                  "loc": {
                                    "start": {
                                      "line": 78,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 81,
                                      "column": 13
                                    }
                                  },
                                  "properties": [
                                    {
                                      "type": "Property",
                                      "start": 3675,
                                      "end": 3703,
                                      "loc": {
                                        "start": {
                                          "line": 78,
                                          "column": 13
                                        },
                                        "end": {
                                          "line": 78,
                                          "column": 41
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 3675,
                                        "end": 3680,
                                        "loc": {
                                          "start": {
                                            "line": 78,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 78,
                                            "column": 18
                                          }
                                        },
                                        "name": "color"
                                      },
                                      "value": {
                                        "type": "CallExpression",
                                        "start": 3682,
                                        "end": 3703,
                                        "loc": {
                                          "start": {
                                            "line": 78,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 78,
                                            "column": 41
                                          }
                                        },
                                        "callee": {
                                          "type": "Identifier",
                                          "start": 3682,
                                          "end": 3690,
                                          "loc": {
                                            "start": {
                                              "line": 78,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 78,
                                              "column": 28
                                            }
                                          },
                                          "name": "getColor"
                                        },
                                        "arguments": [
                                          {
                                            "type": "ThisExpression",
                                            "start": 3691,
                                            "end": 3695,
                                            "loc": {
                                              "start": {
                                                "line": 78,
                                                "column": 29
                                              },
                                              "end": {
                                                "line": 78,
                                                "column": 33
                                              }
                                            }
                                          },
                                          {
                                            "type": "Literal",
                                            "start": 3697,
                                            "end": 3702,
                                            "loc": {
                                              "start": {
                                                "line": 78,
                                                "column": 35
                                              },
                                              "end": {
                                                "line": 78,
                                                "column": 40
                                              }
                                            },
                                            "value": false,
                                            "rawValue": false,
                                            "raw": "false"
                                          }
                                        ]
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 3705,
                                      "end": 3727,
                                      "loc": {
                                        "start": {
                                          "line": 78,
                                          "column": 43
                                        },
                                        "end": {
                                          "line": 78,
                                          "column": 65
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 3705,
                                        "end": 3709,
                                        "loc": {
                                          "start": {
                                            "line": 78,
                                            "column": 43
                                          },
                                          "end": {
                                            "line": 78,
                                            "column": 47
                                          }
                                        },
                                        "name": "side"
                                      },
                                      "value": {
                                        "type": "MemberExpression",
                                        "start": 3711,
                                        "end": 3727,
                                        "loc": {
                                          "start": {
                                            "line": 78,
                                            "column": 49
                                          },
                                          "end": {
                                            "line": 78,
                                            "column": 65
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 3711,
                                          "end": 3716,
                                          "loc": {
                                            "start": {
                                              "line": 78,
                                              "column": 49
                                            },
                                            "end": {
                                              "line": 78,
                                              "column": 54
                                            }
                                          },
                                          "name": "THREE"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 3717,
                                          "end": 3727,
                                          "loc": {
                                            "start": {
                                              "line": 78,
                                              "column": 55
                                            },
                                            "end": {
                                              "line": 78,
                                              "column": 65
                                            }
                                          },
                                          "name": "DoubleSide"
                                        },
                                        "computed": false
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 3746,
                                      "end": 3765,
                                      "loc": {
                                        "start": {
                                          "line": 79,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 79,
                                          "column": 35
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 3746,
                                        "end": 3759,
                                        "loc": {
                                          "start": {
                                            "line": 79,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 79,
                                            "column": 29
                                          }
                                        },
                                        "name": "polygonOffset"
                                      },
                                      "value": {
                                        "type": "Literal",
                                        "start": 3761,
                                        "end": 3765,
                                        "loc": {
                                          "start": {
                                            "line": 79,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 79,
                                            "column": 35
                                          }
                                        },
                                        "value": true,
                                        "rawValue": true,
                                        "raw": "true"
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 3767,
                                      "end": 3790,
                                      "loc": {
                                        "start": {
                                          "line": 79,
                                          "column": 37
                                        },
                                        "end": {
                                          "line": 79,
                                          "column": 60
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 3767,
                                        "end": 3786,
                                        "loc": {
                                          "start": {
                                            "line": 79,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 79,
                                            "column": 56
                                          }
                                        },
                                        "name": "polygonOffsetFactor"
                                      },
                                      "value": {
                                        "type": "UnaryExpression",
                                        "start": 3788,
                                        "end": 3790,
                                        "loc": {
                                          "start": {
                                            "line": 79,
                                            "column": 58
                                          },
                                          "end": {
                                            "line": 79,
                                            "column": 60
                                          }
                                        },
                                        "operator": "-",
                                        "prefix": true,
                                        "argument": {
                                          "type": "Literal",
                                          "start": 3789,
                                          "end": 3790,
                                          "loc": {
                                            "start": {
                                              "line": 79,
                                              "column": 59
                                            },
                                            "end": {
                                              "line": 79,
                                              "column": 60
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        }
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 3792,
                                      "end": 3816,
                                      "loc": {
                                        "start": {
                                          "line": 79,
                                          "column": 62
                                        },
                                        "end": {
                                          "line": 79,
                                          "column": 86
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 3792,
                                        "end": 3810,
                                        "loc": {
                                          "start": {
                                            "line": 79,
                                            "column": 62
                                          },
                                          "end": {
                                            "line": 79,
                                            "column": 80
                                          }
                                        },
                                        "name": "polygonOffsetUnits"
                                      },
                                      "value": {
                                        "type": "UnaryExpression",
                                        "start": 3813,
                                        "end": 3816,
                                        "loc": {
                                          "start": {
                                            "line": 79,
                                            "column": 83
                                          },
                                          "end": {
                                            "line": 79,
                                            "column": 86
                                          }
                                        },
                                        "operator": "-",
                                        "prefix": true,
                                        "argument": {
                                          "type": "Literal",
                                          "start": 3814,
                                          "end": 3816,
                                          "loc": {
                                            "start": {
                                              "line": 79,
                                              "column": 84
                                            },
                                            "end": {
                                              "line": 79,
                                              "column": 86
                                            }
                                          },
                                          "value": 10,
                                          "rawValue": 10,
                                          "raw": "10"
                                        }
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 3835,
                                      "end": 3852,
                                      "loc": {
                                        "start": {
                                          "line": 80,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 80,
                                          "column": 33
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 3835,
                                        "end": 3846,
                                        "loc": {
                                          "start": {
                                            "line": 80,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 80,
                                            "column": 27
                                          }
                                        },
                                        "name": "transparent"
                                      },
                                      "value": {
                                        "type": "Literal",
                                        "start": 3848,
                                        "end": 3852,
                                        "loc": {
                                          "start": {
                                            "line": 80,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 80,
                                            "column": 33
                                          }
                                        },
                                        "value": true,
                                        "rawValue": true,
                                        "raw": "true"
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 3854,
                                      "end": 3866,
                                      "loc": {
                                        "start": {
                                          "line": 80,
                                          "column": 35
                                        },
                                        "end": {
                                          "line": 80,
                                          "column": 47
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 3854,
                                        "end": 3861,
                                        "loc": {
                                          "start": {
                                            "line": 80,
                                            "column": 35
                                          },
                                          "end": {
                                            "line": 80,
                                            "column": 42
                                          }
                                        },
                                        "name": "opacity"
                                      },
                                      "value": {
                                        "type": "Literal",
                                        "start": 3863,
                                        "end": 3866,
                                        "loc": {
                                          "start": {
                                            "line": 80,
                                            "column": 44
                                          },
                                          "end": {
                                            "line": 80,
                                            "column": 47
                                          }
                                        },
                                        "value": 0.3,
                                        "rawValue": 0.3,
                                        "raw": "0.3"
                                      },
                                      "kind": "init"
                                    }
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3904,
                      "end": 3946,
                      "loc": {
                        "start": {
                          "line": 83,
                          "column": 8
                        },
                        "end": {
                          "line": 83,
                          "column": 50
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3904,
                        "end": 3945,
                        "loc": {
                          "start": {
                            "line": 83,
                            "column": 8
                          },
                          "end": {
                            "line": 83,
                            "column": 49
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3904,
                          "end": 3937,
                          "loc": {
                            "start": {
                              "line": 83,
                              "column": 8
                            },
                            "end": {
                              "line": 83,
                              "column": 41
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 3904,
                            "end": 3929,
                            "loc": {
                              "start": {
                                "line": 83,
                                "column": 8
                              },
                              "end": {
                                "line": 83,
                                "column": 33
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 3904,
                              "end": 3908,
                              "loc": {
                                "start": {
                                  "line": 83,
                                  "column": 8
                                },
                                "end": {
                                  "line": 83,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3909,
                              "end": 3929,
                              "loc": {
                                "start": {
                                  "line": 83,
                                  "column": 13
                                },
                                "end": {
                                  "line": 83,
                                  "column": 33
                                }
                              },
                              "name": "constraintsSubstrate"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3930,
                            "end": 3937,
                            "loc": {
                              "start": {
                                "line": 83,
                                "column": 34
                              },
                              "end": {
                                "line": 83,
                                "column": 41
                              }
                            },
                            "name": "visible"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 3940,
                          "end": 3945,
                          "loc": {
                            "start": {
                              "line": 83,
                              "column": 44
                            },
                            "end": {
                              "line": 83,
                              "column": 49
                            }
                          },
                          "value": false,
                          "rawValue": false,
                          "raw": "false"
                        }
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 3961,
              "end": 4020,
              "loc": {
                "start": {
                  "line": 86,
                  "column": 4
                },
                "end": {
                  "line": 88,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 3961,
                "end": 3977,
                "loc": {
                  "start": {
                    "line": 86,
                    "column": 4
                  },
                  "end": {
                    "line": 86,
                    "column": 20
                  }
                },
                "name": "finishedUpdating"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 3977,
                "end": 4020,
                "loc": {
                  "start": {
                    "line": 86,
                    "column": 20
                  },
                  "end": {
                    "line": 88,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 3980,
                  "end": 4020,
                  "loc": {
                    "start": {
                      "line": 86,
                      "column": 23
                    },
                    "end": {
                      "line": 88,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 3991,
                      "end": 4013,
                      "loc": {
                        "start": {
                          "line": 87,
                          "column": 8
                        },
                        "end": {
                          "line": 87,
                          "column": 30
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 3991,
                        "end": 4012,
                        "loc": {
                          "start": {
                            "line": 87,
                            "column": 8
                          },
                          "end": {
                            "line": 87,
                            "column": 29
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 3991,
                          "end": 4010,
                          "loc": {
                            "start": {
                              "line": 87,
                              "column": 8
                            },
                            "end": {
                              "line": 87,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 3991,
                            "end": 3995,
                            "loc": {
                              "start": {
                                "line": 87,
                                "column": 8
                              },
                              "end": {
                                "line": 87,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3996,
                            "end": 4010,
                            "loc": {
                              "start": {
                                "line": 87,
                                "column": 13
                              },
                              "end": {
                                "line": 87,
                                "column": 27
                              }
                            },
                            "name": "updateGeometry"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    }
                  ]
                }
              }
            }
          ],
          "trailingComments": null
        },
        "leadingComments": [
          {
            "type": "CommentLine",
            "value": "=============================== Sketch.GeometricObject =================================",
            "start": 2186,
            "end": 2276,
            "loc": {
              "start": {
                "line": 53,
                "column": 0
              },
              "end": {
                "line": 53,
                "column": 90
              }
            },
            "range": [
              2186,
              2276
            ]
          },
          {
            "type": "Block",
            "value": "*\r\n * Each geometric objects has several update functions, here they are:\r\n * 1. updateGeometry(movedPoint)\r\n *   must be called after any child point is changed (i.e. line's endpoint or arc's center was moved)\r\n *   recalculates inner parameters of the geometry (if present, i.e. center, angles)\r\n * 2. updateSizes(owningView)\r\n *   must be called after camera or object has changed, and after any geometrical changes\r\n *   recalculates any required sizing data (i.e. `width` value)\r\n *   automatically generated by mixinPixelSizedGeometry\r\n * 3. updateVisualization()\r\n *   must be called after anything changes, which may influence visible representation of object\r\n *   updates or rebuilds a THREE.Mesh which visibly represent the object\r\n * Note that each update function depends on the data obtained from the previous steps.\r\n *\r\n * Here is general advice of how to call update functions:\r\n *   - call updateGeometry directly and only inside controls handlers (when smth is edited)\r\n *   - do not call other updates directly, just register each object with Sketcher.registerVisualization\r\n ",
            "start": 2278,
            "end": 3378,
            "loc": {
              "start": {
                "line": 54,
                "column": 0
              },
              "end": {
                "line": 71,
                "column": 3
              }
            },
            "range": [
              2278,
              3378
            ]
          }
        ],
        "trailingComments": [
          {
            "type": "CommentLine",
            "value": "================================ Sketch.Point =========================================",
            "start": 4027,
            "end": 4116,
            "loc": {
              "start": {
                "line": 91,
                "column": 0
              },
              "end": {
                "line": 91,
                "column": 89
              }
            },
            "range": [
              4027,
              4116
            ]
          }
        ]
      },
      "specifiers": [],
      "source": null,
      "leadingComments": [
        {
          "type": "CommentLine",
          "value": "=============================== Sketch.GeometricObject =================================",
          "start": 2186,
          "end": 2276,
          "loc": {
            "start": {
              "line": 53,
              "column": 0
            },
            "end": {
              "line": 53,
              "column": 90
            }
          },
          "range": [
            2186,
            2276
          ]
        },
        {
          "type": "Block",
          "value": "*\r\n * Each geometric objects has several update functions, here they are:\r\n * 1. updateGeometry(movedPoint)\r\n *   must be called after any child point is changed (i.e. line's endpoint or arc's center was moved)\r\n *   recalculates inner parameters of the geometry (if present, i.e. center, angles)\r\n * 2. updateSizes(owningView)\r\n *   must be called after camera or object has changed, and after any geometrical changes\r\n *   recalculates any required sizing data (i.e. `width` value)\r\n *   automatically generated by mixinPixelSizedGeometry\r\n * 3. updateVisualization()\r\n *   must be called after anything changes, which may influence visible representation of object\r\n *   updates or rebuilds a THREE.Mesh which visibly represent the object\r\n * Note that each update function depends on the data obtained from the previous steps.\r\n *\r\n * Here is general advice of how to call update functions:\r\n *   - call updateGeometry directly and only inside controls handlers (when smth is edited)\r\n *   - do not call other updates directly, just register each object with Sketcher.registerVisualization\r\n ",
          "start": 2278,
          "end": 3378,
          "loc": {
            "start": {
              "line": 54,
              "column": 0
            },
            "end": {
              "line": 71,
              "column": 3
            }
          },
          "range": [
            2278,
            3378
          ]
        }
      ],
      "trailingComments": [
        {
          "type": "CommentLine",
          "value": "================================ Sketch.Point =========================================",
          "start": 4027,
          "end": 4116,
          "loc": {
            "start": {
              "line": 91,
              "column": 0
            },
            "end": {
              "line": 91,
              "column": 89
            }
          },
          "range": [
            4027,
            4116
          ]
        }
      ]
    },
    {
      "type": "ExportNamedDeclaration",
      "start": 4118,
      "end": 6782,
      "loc": {
        "start": {
          "line": 92,
          "column": 0
        },
        "end": {
          "line": 182,
          "column": 1
        }
      },
      "declaration": {
        "type": "ClassDeclaration",
        "start": 4125,
        "end": 6782,
        "loc": {
          "start": {
            "line": 92,
            "column": 7
          },
          "end": {
            "line": 182,
            "column": 1
          }
        },
        "id": {
          "type": "Identifier",
          "start": 4131,
          "end": 4136,
          "loc": {
            "start": {
              "line": 92,
              "column": 13
            },
            "end": {
              "line": 92,
              "column": 18
            }
          },
          "name": "Point",
          "leadingComments": null
        },
        "superClass": {
          "type": "Identifier",
          "start": 4145,
          "end": 4160,
          "loc": {
            "start": {
              "line": 92,
              "column": 27
            },
            "end": {
              "line": 92,
              "column": 42
            }
          },
          "name": "GeometricObject"
        },
        "body": {
          "type": "ClassBody",
          "start": 4161,
          "end": 6782,
          "loc": {
            "start": {
              "line": 92,
              "column": 43
            },
            "end": {
              "line": 182,
              "column": 1
            }
          },
          "body": [
            {
              "type": "MethodDefinition",
              "start": 4168,
              "end": 4693,
              "loc": {
                "start": {
                  "line": 93,
                  "column": 4
                },
                "end": {
                  "line": 105,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 4168,
                "end": 4179,
                "loc": {
                  "start": {
                    "line": 93,
                    "column": 4
                  },
                  "end": {
                    "line": 93,
                    "column": 15
                  }
                },
                "name": "constructor"
              },
              "static": false,
              "kind": "constructor",
              "value": {
                "type": "FunctionExpression",
                "start": 4179,
                "end": 4693,
                "loc": {
                  "start": {
                    "line": 93,
                    "column": 15
                  },
                  "end": {
                    "line": 105,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 4182,
                  "end": 4693,
                  "loc": {
                    "start": {
                      "line": 93,
                      "column": 18
                    },
                    "end": {
                      "line": 105,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 4193,
                      "end": 4201,
                      "loc": {
                        "start": {
                          "line": 94,
                          "column": 8
                        },
                        "end": {
                          "line": 94,
                          "column": 16
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 4193,
                        "end": 4200,
                        "loc": {
                          "start": {
                            "line": 94,
                            "column": 8
                          },
                          "end": {
                            "line": 94,
                            "column": 15
                          }
                        },
                        "callee": {
                          "type": "Super",
                          "start": 4193,
                          "end": 4198,
                          "loc": {
                            "start": {
                              "line": 94,
                              "column": 8
                            },
                            "end": {
                              "line": 94,
                              "column": 13
                            }
                          }
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 4211,
                      "end": 4231,
                      "loc": {
                        "start": {
                          "line": 95,
                          "column": 8
                        },
                        "end": {
                          "line": 95,
                          "column": 28
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 4211,
                        "end": 4230,
                        "loc": {
                          "start": {
                            "line": 95,
                            "column": 8
                          },
                          "end": {
                            "line": 95,
                            "column": 27
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 4211,
                          "end": 4220,
                          "loc": {
                            "start": {
                              "line": 95,
                              "column": 8
                            },
                            "end": {
                              "line": 95,
                              "column": 17
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 4211,
                            "end": 4215,
                            "loc": {
                              "start": {
                                "line": 95,
                                "column": 8
                              },
                              "end": {
                                "line": 95,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4216,
                            "end": 4220,
                            "loc": {
                              "start": {
                                "line": 95,
                                "column": 13
                              },
                              "end": {
                                "line": 95,
                                "column": 17
                              }
                            },
                            "name": "type"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 4223,
                          "end": 4230,
                          "loc": {
                            "start": {
                              "line": 95,
                              "column": 20
                            },
                            "end": {
                              "line": 95,
                              "column": 27
                            }
                          },
                          "value": "Point",
                          "rawValue": "Point",
                          "raw": "'Point'"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 4243,
                      "end": 4519,
                      "loc": {
                        "start": {
                          "line": 97,
                          "column": 8
                        },
                        "end": {
                          "line": 101,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 4243,
                        "end": 4518,
                        "loc": {
                          "start": {
                            "line": 97,
                            "column": 8
                          },
                          "end": {
                            "line": 101,
                            "column": 10
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 4243,
                          "end": 4252,
                          "loc": {
                            "start": {
                              "line": 97,
                              "column": 8
                            },
                            "end": {
                              "line": 97,
                              "column": 17
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 4243,
                            "end": 4247,
                            "loc": {
                              "start": {
                                "line": 97,
                                "column": 8
                              },
                              "end": {
                                "line": 97,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4248,
                            "end": 4252,
                            "loc": {
                              "start": {
                                "line": 97,
                                "column": 13
                              },
                              "end": {
                                "line": 97,
                                "column": 17
                              }
                            },
                            "name": "mesh"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 4255,
                          "end": 4518,
                          "loc": {
                            "start": {
                              "line": 97,
                              "column": 20
                            },
                            "end": {
                              "line": 101,
                              "column": 10
                            }
                          },
                          "callee": {
                            "type": "Identifier",
                            "start": 4259,
                            "end": 4271,
                            "loc": {
                              "start": {
                                "line": 97,
                                "column": 24
                              },
                              "end": {
                                "line": 97,
                                "column": 36
                              }
                            },
                            "name": "InteractMesh"
                          },
                          "arguments": [
                            {
                              "type": "NewExpression",
                              "start": 4272,
                              "end": 4305,
                              "loc": {
                                "start": {
                                  "line": 97,
                                  "column": 37
                                },
                                "end": {
                                  "line": 97,
                                  "column": 70
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 4276,
                                "end": 4296,
                                "loc": {
                                  "start": {
                                    "line": 97,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 97,
                                    "column": 61
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 4276,
                                  "end": 4281,
                                  "loc": {
                                    "start": {
                                      "line": 97,
                                      "column": 41
                                    },
                                    "end": {
                                      "line": 97,
                                      "column": 46
                                    }
                                  },
                                  "name": "THREE"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 4282,
                                  "end": 4296,
                                  "loc": {
                                    "start": {
                                      "line": 97,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 97,
                                      "column": 61
                                    }
                                  },
                                  "name": "CircleGeometry"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 4297,
                                  "end": 4300,
                                  "loc": {
                                    "start": {
                                      "line": 97,
                                      "column": 62
                                    },
                                    "end": {
                                      "line": 97,
                                      "column": 65
                                    }
                                  },
                                  "value": 0.5,
                                  "rawValue": 0.5,
                                  "raw": "0.5"
                                },
                                {
                                  "type": "Literal",
                                  "start": 4302,
                                  "end": 4304,
                                  "loc": {
                                    "start": {
                                      "line": 97,
                                      "column": 67
                                    },
                                    "end": {
                                      "line": 97,
                                      "column": 69
                                    }
                                  },
                                  "value": 32,
                                  "rawValue": 32,
                                  "raw": "32"
                                }
                              ]
                            },
                            {
                              "type": "NewExpression",
                              "start": 4307,
                              "end": 4517,
                              "loc": {
                                "start": {
                                  "line": 97,
                                  "column": 72
                                },
                                "end": {
                                  "line": 101,
                                  "column": 9
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 4311,
                                "end": 4334,
                                "loc": {
                                  "start": {
                                    "line": 97,
                                    "column": 76
                                  },
                                  "end": {
                                    "line": 97,
                                    "column": 99
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 4311,
                                  "end": 4316,
                                  "loc": {
                                    "start": {
                                      "line": 97,
                                      "column": 76
                                    },
                                    "end": {
                                      "line": 97,
                                      "column": 81
                                    }
                                  },
                                  "name": "THREE"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 4317,
                                  "end": 4334,
                                  "loc": {
                                    "start": {
                                      "line": 97,
                                      "column": 82
                                    },
                                    "end": {
                                      "line": 97,
                                      "column": 99
                                    }
                                  },
                                  "name": "MeshBasicMaterial"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ObjectExpression",
                                  "start": 4349,
                                  "end": 4506,
                                  "loc": {
                                    "start": {
                                      "line": 98,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 100,
                                      "column": 13
                                    }
                                  },
                                  "properties": [
                                    {
                                      "type": "Property",
                                      "start": 4350,
                                      "end": 4378,
                                      "loc": {
                                        "start": {
                                          "line": 98,
                                          "column": 13
                                        },
                                        "end": {
                                          "line": 98,
                                          "column": 41
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 4350,
                                        "end": 4355,
                                        "loc": {
                                          "start": {
                                            "line": 98,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 98,
                                            "column": 18
                                          }
                                        },
                                        "name": "color"
                                      },
                                      "value": {
                                        "type": "CallExpression",
                                        "start": 4357,
                                        "end": 4378,
                                        "loc": {
                                          "start": {
                                            "line": 98,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 98,
                                            "column": 41
                                          }
                                        },
                                        "callee": {
                                          "type": "Identifier",
                                          "start": 4357,
                                          "end": 4365,
                                          "loc": {
                                            "start": {
                                              "line": 98,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 98,
                                              "column": 28
                                            }
                                          },
                                          "name": "getColor"
                                        },
                                        "arguments": [
                                          {
                                            "type": "ThisExpression",
                                            "start": 4366,
                                            "end": 4370,
                                            "loc": {
                                              "start": {
                                                "line": 98,
                                                "column": 29
                                              },
                                              "end": {
                                                "line": 98,
                                                "column": 33
                                              }
                                            }
                                          },
                                          {
                                            "type": "Literal",
                                            "start": 4372,
                                            "end": 4377,
                                            "loc": {
                                              "start": {
                                                "line": 98,
                                                "column": 35
                                              },
                                              "end": {
                                                "line": 98,
                                                "column": 40
                                              }
                                            },
                                            "value": false,
                                            "rawValue": false,
                                            "raw": "false"
                                          }
                                        ]
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 4380,
                                      "end": 4402,
                                      "loc": {
                                        "start": {
                                          "line": 98,
                                          "column": 43
                                        },
                                        "end": {
                                          "line": 98,
                                          "column": 65
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 4380,
                                        "end": 4384,
                                        "loc": {
                                          "start": {
                                            "line": 98,
                                            "column": 43
                                          },
                                          "end": {
                                            "line": 98,
                                            "column": 47
                                          }
                                        },
                                        "name": "side"
                                      },
                                      "value": {
                                        "type": "MemberExpression",
                                        "start": 4386,
                                        "end": 4402,
                                        "loc": {
                                          "start": {
                                            "line": 98,
                                            "column": 49
                                          },
                                          "end": {
                                            "line": 98,
                                            "column": 65
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 4386,
                                          "end": 4391,
                                          "loc": {
                                            "start": {
                                              "line": 98,
                                              "column": 49
                                            },
                                            "end": {
                                              "line": 98,
                                              "column": 54
                                            }
                                          },
                                          "name": "THREE"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 4392,
                                          "end": 4402,
                                          "loc": {
                                            "start": {
                                              "line": 98,
                                              "column": 55
                                            },
                                            "end": {
                                              "line": 98,
                                              "column": 65
                                            }
                                          },
                                          "name": "DoubleSide"
                                        },
                                        "computed": false
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 4421,
                                      "end": 4440,
                                      "loc": {
                                        "start": {
                                          "line": 99,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 99,
                                          "column": 35
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 4421,
                                        "end": 4434,
                                        "loc": {
                                          "start": {
                                            "line": 99,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 99,
                                            "column": 29
                                          }
                                        },
                                        "name": "polygonOffset"
                                      },
                                      "value": {
                                        "type": "Literal",
                                        "start": 4436,
                                        "end": 4440,
                                        "loc": {
                                          "start": {
                                            "line": 99,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 99,
                                            "column": 35
                                          }
                                        },
                                        "value": true,
                                        "rawValue": true,
                                        "raw": "true"
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 4442,
                                      "end": 4465,
                                      "loc": {
                                        "start": {
                                          "line": 99,
                                          "column": 37
                                        },
                                        "end": {
                                          "line": 99,
                                          "column": 60
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 4442,
                                        "end": 4461,
                                        "loc": {
                                          "start": {
                                            "line": 99,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 99,
                                            "column": 56
                                          }
                                        },
                                        "name": "polygonOffsetFactor"
                                      },
                                      "value": {
                                        "type": "UnaryExpression",
                                        "start": 4463,
                                        "end": 4465,
                                        "loc": {
                                          "start": {
                                            "line": 99,
                                            "column": 58
                                          },
                                          "end": {
                                            "line": 99,
                                            "column": 60
                                          }
                                        },
                                        "operator": "-",
                                        "prefix": true,
                                        "argument": {
                                          "type": "Literal",
                                          "start": 4464,
                                          "end": 4465,
                                          "loc": {
                                            "start": {
                                              "line": 99,
                                              "column": 59
                                            },
                                            "end": {
                                              "line": 99,
                                              "column": 60
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        }
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 4467,
                                      "end": 4491,
                                      "loc": {
                                        "start": {
                                          "line": 99,
                                          "column": 62
                                        },
                                        "end": {
                                          "line": 99,
                                          "column": 86
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 4467,
                                        "end": 4485,
                                        "loc": {
                                          "start": {
                                            "line": 99,
                                            "column": 62
                                          },
                                          "end": {
                                            "line": 99,
                                            "column": 80
                                          }
                                        },
                                        "name": "polygonOffsetUnits"
                                      },
                                      "value": {
                                        "type": "UnaryExpression",
                                        "start": 4488,
                                        "end": 4491,
                                        "loc": {
                                          "start": {
                                            "line": 99,
                                            "column": 83
                                          },
                                          "end": {
                                            "line": 99,
                                            "column": 86
                                          }
                                        },
                                        "operator": "-",
                                        "prefix": true,
                                        "argument": {
                                          "type": "Literal",
                                          "start": 4489,
                                          "end": 4491,
                                          "loc": {
                                            "start": {
                                              "line": 99,
                                              "column": 84
                                            },
                                            "end": {
                                              "line": 99,
                                              "column": 86
                                            }
                                          },
                                          "value": 10,
                                          "rawValue": 10,
                                          "raw": "10"
                                        }
                                      },
                                      "kind": "init"
                                    }
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 4529,
                      "end": 4555,
                      "loc": {
                        "start": {
                          "line": 102,
                          "column": 8
                        },
                        "end": {
                          "line": 102,
                          "column": 34
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 4529,
                        "end": 4554,
                        "loc": {
                          "start": {
                            "line": 102,
                            "column": 8
                          },
                          "end": {
                            "line": 102,
                            "column": 33
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 4529,
                          "end": 4542,
                          "loc": {
                            "start": {
                              "line": 102,
                              "column": 8
                            },
                            "end": {
                              "line": 102,
                              "column": 21
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 4529,
                            "end": 4533,
                            "loc": {
                              "start": {
                                "line": 102,
                                "column": 8
                              },
                              "end": {
                                "line": 102,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4534,
                            "end": 4542,
                            "loc": {
                              "start": {
                                "line": 102,
                                "column": 13
                              },
                              "end": {
                                "line": 102,
                                "column": 21
                              }
                            },
                            "name": "interact"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 4545,
                          "end": 4554,
                          "loc": {
                            "start": {
                              "line": 102,
                              "column": 24
                            },
                            "end": {
                              "line": 102,
                              "column": 33
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 4545,
                            "end": 4549,
                            "loc": {
                              "start": {
                                "line": 102,
                                "column": 24
                              },
                              "end": {
                                "line": 102,
                                "column": 28
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4550,
                            "end": 4554,
                            "loc": {
                              "start": {
                                "line": 102,
                                "column": 29
                              },
                              "end": {
                                "line": 102,
                                "column": 33
                              }
                            },
                            "name": "mesh"
                          },
                          "computed": false
                        }
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "pseudonym, place your interactions here",
                          "start": 4557,
                          "end": 4598,
                          "loc": {
                            "start": {
                              "line": 102,
                              "column": 36
                            },
                            "end": {
                              "line": 102,
                              "column": 77
                            }
                          },
                          "range": [
                            4557,
                            4598
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 4608,
                      "end": 4629,
                      "loc": {
                        "start": {
                          "line": 103,
                          "column": 8
                        },
                        "end": {
                          "line": 103,
                          "column": 29
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 4608,
                        "end": 4628,
                        "loc": {
                          "start": {
                            "line": 103,
                            "column": 8
                          },
                          "end": {
                            "line": 103,
                            "column": 28
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 4608,
                          "end": 4619,
                          "loc": {
                            "start": {
                              "line": 103,
                              "column": 8
                            },
                            "end": {
                              "line": 103,
                              "column": 19
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 4608,
                            "end": 4612,
                            "loc": {
                              "start": {
                                "line": 103,
                                "column": 8
                              },
                              "end": {
                                "line": 103,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4613,
                            "end": 4619,
                            "loc": {
                              "start": {
                                "line": 103,
                                "column": 13
                              },
                              "end": {
                                "line": 103,
                                "column": 19
                              }
                            },
                            "name": "points"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "ArrayExpression",
                          "start": 4622,
                          "end": 4628,
                          "loc": {
                            "start": {
                              "line": 103,
                              "column": 22
                            },
                            "end": {
                              "line": 103,
                              "column": 28
                            }
                          },
                          "elements": [
                            {
                              "type": "ThisExpression",
                              "start": 4623,
                              "end": 4627,
                              "loc": {
                                "start": {
                                  "line": 103,
                                  "column": 23
                                },
                                "end": {
                                  "line": 103,
                                  "column": 27
                                }
                              }
                            }
                          ]
                        },
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "pseudonym, place your interactions here",
                          "start": 4557,
                          "end": 4598,
                          "loc": {
                            "start": {
                              "line": 102,
                              "column": 36
                            },
                            "end": {
                              "line": 102,
                              "column": 77
                            }
                          },
                          "range": [
                            4557,
                            4598
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 4639,
                      "end": 4686,
                      "loc": {
                        "start": {
                          "line": 104,
                          "column": 8
                        },
                        "end": {
                          "line": 104,
                          "column": 55
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 4639,
                        "end": 4685,
                        "loc": {
                          "start": {
                            "line": 104,
                            "column": 8
                          },
                          "end": {
                            "line": 104,
                            "column": 54
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 4639,
                          "end": 4647,
                          "loc": {
                            "start": {
                              "line": 104,
                              "column": 8
                            },
                            "end": {
                              "line": 104,
                              "column": 16
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 4639,
                            "end": 4643,
                            "loc": {
                              "start": {
                                "line": 104,
                                "column": 8
                              },
                              "end": {
                                "line": 104,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4644,
                            "end": 4647,
                            "loc": {
                              "start": {
                                "line": 104,
                                "column": 13
                              },
                              "end": {
                                "line": 104,
                                "column": 16
                              }
                            },
                            "name": "add"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 4648,
                            "end": 4657,
                            "loc": {
                              "start": {
                                "line": 104,
                                "column": 17
                              },
                              "end": {
                                "line": 104,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 4648,
                              "end": 4652,
                              "loc": {
                                "start": {
                                  "line": 104,
                                  "column": 17
                                },
                                "end": {
                                  "line": 104,
                                  "column": 21
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 4653,
                              "end": 4657,
                              "loc": {
                                "start": {
                                  "line": 104,
                                  "column": 22
                                },
                                "end": {
                                  "line": 104,
                                  "column": 26
                                }
                              },
                              "name": "mesh"
                            },
                            "computed": false
                          },
                          {
                            "type": "MemberExpression",
                            "start": 4659,
                            "end": 4684,
                            "loc": {
                              "start": {
                                "line": 104,
                                "column": 28
                              },
                              "end": {
                                "line": 104,
                                "column": 53
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 4659,
                              "end": 4663,
                              "loc": {
                                "start": {
                                  "line": 104,
                                  "column": 28
                                },
                                "end": {
                                  "line": 104,
                                  "column": 32
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 4664,
                              "end": 4684,
                              "loc": {
                                "start": {
                                  "line": 104,
                                  "column": 33
                                },
                                "end": {
                                  "line": 104,
                                  "column": 53
                                }
                              },
                              "name": "constraintsSubstrate"
                            },
                            "computed": false
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 4701,
              "end": 4842,
              "loc": {
                "start": {
                  "line": 107,
                  "column": 4
                },
                "end": {
                  "line": 111,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 4707,
                "end": 4711,
                "loc": {
                  "start": {
                    "line": 107,
                    "column": 10
                  },
                  "end": {
                    "line": 107,
                    "column": 14
                  }
                },
                "name": "move"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 4711,
                "end": 4842,
                "loc": {
                  "start": {
                    "line": 107,
                    "column": 14
                  },
                  "end": {
                    "line": 111,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 4712,
                    "end": 4720,
                    "loc": {
                      "start": {
                        "line": 107,
                        "column": 15
                      },
                      "end": {
                        "line": 107,
                        "column": 23
                      }
                    },
                    "name": "position"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 4722,
                  "end": 4842,
                  "loc": {
                    "start": {
                      "line": 107,
                      "column": 25
                    },
                    "end": {
                      "line": 111,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 4733,
                      "end": 4762,
                      "loc": {
                        "start": {
                          "line": 108,
                          "column": 8
                        },
                        "end": {
                          "line": 108,
                          "column": 37
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 4733,
                        "end": 4761,
                        "loc": {
                          "start": {
                            "line": 108,
                            "column": 8
                          },
                          "end": {
                            "line": 108,
                            "column": 36
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 4733,
                          "end": 4751,
                          "loc": {
                            "start": {
                              "line": 108,
                              "column": 8
                            },
                            "end": {
                              "line": 108,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 4733,
                            "end": 4746,
                            "loc": {
                              "start": {
                                "line": 108,
                                "column": 8
                              },
                              "end": {
                                "line": 108,
                                "column": 21
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 4733,
                              "end": 4737,
                              "loc": {
                                "start": {
                                  "line": 108,
                                  "column": 8
                                },
                                "end": {
                                  "line": 108,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 4738,
                              "end": 4746,
                              "loc": {
                                "start": {
                                  "line": 108,
                                  "column": 13
                                },
                                "end": {
                                  "line": 108,
                                  "column": 21
                                }
                              },
                              "name": "position"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4747,
                            "end": 4751,
                            "loc": {
                              "start": {
                                "line": 108,
                                "column": 22
                              },
                              "end": {
                                "line": 108,
                                "column": 26
                              }
                            },
                            "name": "copy"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 4752,
                            "end": 4760,
                            "loc": {
                              "start": {
                                "line": 108,
                                "column": 27
                              },
                              "end": {
                                "line": 108,
                                "column": 35
                              }
                            },
                            "name": "position"
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 4772,
                      "end": 4803,
                      "loc": {
                        "start": {
                          "line": 109,
                          "column": 8
                        },
                        "end": {
                          "line": 109,
                          "column": 39
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 4772,
                        "end": 4802,
                        "loc": {
                          "start": {
                            "line": 109,
                            "column": 8
                          },
                          "end": {
                            "line": 109,
                            "column": 38
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 4778,
                          "end": 4802,
                          "loc": {
                            "start": {
                              "line": 109,
                              "column": 14
                            },
                            "end": {
                              "line": 109,
                              "column": 38
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 4778,
                            "end": 4787,
                            "loc": {
                              "start": {
                                "line": 109,
                                "column": 14
                              },
                              "end": {
                                "line": 109,
                                "column": 23
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 4778,
                              "end": 4782,
                              "loc": {
                                "start": {
                                  "line": 109,
                                  "column": 14
                                },
                                "end": {
                                  "line": 109,
                                  "column": 18
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 4783,
                              "end": 4787,
                              "loc": {
                                "start": {
                                  "line": 109,
                                  "column": 19
                                },
                                "end": {
                                  "line": 109,
                                  "column": 23
                                }
                              },
                              "name": "emit"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Literal",
                              "start": 4788,
                              "end": 4795,
                              "loc": {
                                "start": {
                                  "line": 109,
                                  "column": 24
                                },
                                "end": {
                                  "line": 109,
                                  "column": 31
                                }
                              },
                              "value": "moved",
                              "rawValue": "moved",
                              "raw": "'moved'"
                            },
                            {
                              "type": "ThisExpression",
                              "start": 4797,
                              "end": 4801,
                              "loc": {
                                "start": {
                                  "line": 109,
                                  "column": 33
                                },
                                "end": {
                                  "line": 109,
                                  "column": 37
                                }
                              }
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 4813,
                      "end": 4835,
                      "loc": {
                        "start": {
                          "line": 110,
                          "column": 8
                        },
                        "end": {
                          "line": 110,
                          "column": 30
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 4813,
                        "end": 4834,
                        "loc": {
                          "start": {
                            "line": 110,
                            "column": 8
                          },
                          "end": {
                            "line": 110,
                            "column": 29
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 4813,
                          "end": 4832,
                          "loc": {
                            "start": {
                              "line": 110,
                              "column": 8
                            },
                            "end": {
                              "line": 110,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 4813,
                            "end": 4817,
                            "loc": {
                              "start": {
                                "line": 110,
                                "column": 8
                              },
                              "end": {
                                "line": 110,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4818,
                            "end": 4832,
                            "loc": {
                              "start": {
                                "line": 110,
                                "column": 13
                              },
                              "end": {
                                "line": 110,
                                "column": 27
                              }
                            },
                            "name": "updateGeometry"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 4850,
              "end": 5000,
              "loc": {
                "start": {
                  "line": 113,
                  "column": 4
                },
                "end": {
                  "line": 117,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 4856,
                "end": 4868,
                "loc": {
                  "start": {
                    "line": 113,
                    "column": 10
                  },
                  "end": {
                    "line": 113,
                    "column": 22
                  }
                },
                "name": "moveRelative"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 4868,
                "end": 5000,
                "loc": {
                  "start": {
                    "line": 113,
                    "column": 22
                  },
                  "end": {
                    "line": 117,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 4869,
                    "end": 4878,
                    "loc": {
                      "start": {
                        "line": 113,
                        "column": 23
                      },
                      "end": {
                        "line": 113,
                        "column": 32
                      }
                    },
                    "name": "direction"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 4880,
                  "end": 5000,
                  "loc": {
                    "start": {
                      "line": 113,
                      "column": 34
                    },
                    "end": {
                      "line": 117,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 4891,
                      "end": 4920,
                      "loc": {
                        "start": {
                          "line": 114,
                          "column": 8
                        },
                        "end": {
                          "line": 114,
                          "column": 37
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 4891,
                        "end": 4919,
                        "loc": {
                          "start": {
                            "line": 114,
                            "column": 8
                          },
                          "end": {
                            "line": 114,
                            "column": 36
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 4891,
                          "end": 4908,
                          "loc": {
                            "start": {
                              "line": 114,
                              "column": 8
                            },
                            "end": {
                              "line": 114,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 4891,
                            "end": 4904,
                            "loc": {
                              "start": {
                                "line": 114,
                                "column": 8
                              },
                              "end": {
                                "line": 114,
                                "column": 21
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 4891,
                              "end": 4895,
                              "loc": {
                                "start": {
                                  "line": 114,
                                  "column": 8
                                },
                                "end": {
                                  "line": 114,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 4896,
                              "end": 4904,
                              "loc": {
                                "start": {
                                  "line": 114,
                                  "column": 13
                                },
                                "end": {
                                  "line": 114,
                                  "column": 21
                                }
                              },
                              "name": "position"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4905,
                            "end": 4908,
                            "loc": {
                              "start": {
                                "line": 114,
                                "column": 22
                              },
                              "end": {
                                "line": 114,
                                "column": 25
                              }
                            },
                            "name": "add"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 4909,
                            "end": 4918,
                            "loc": {
                              "start": {
                                "line": 114,
                                "column": 26
                              },
                              "end": {
                                "line": 114,
                                "column": 35
                              }
                            },
                            "name": "direction"
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 4930,
                      "end": 4961,
                      "loc": {
                        "start": {
                          "line": 115,
                          "column": 8
                        },
                        "end": {
                          "line": 115,
                          "column": 39
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 4930,
                        "end": 4960,
                        "loc": {
                          "start": {
                            "line": 115,
                            "column": 8
                          },
                          "end": {
                            "line": 115,
                            "column": 38
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 4936,
                          "end": 4960,
                          "loc": {
                            "start": {
                              "line": 115,
                              "column": 14
                            },
                            "end": {
                              "line": 115,
                              "column": 38
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 4936,
                            "end": 4945,
                            "loc": {
                              "start": {
                                "line": 115,
                                "column": 14
                              },
                              "end": {
                                "line": 115,
                                "column": 23
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 4936,
                              "end": 4940,
                              "loc": {
                                "start": {
                                  "line": 115,
                                  "column": 14
                                },
                                "end": {
                                  "line": 115,
                                  "column": 18
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 4941,
                              "end": 4945,
                              "loc": {
                                "start": {
                                  "line": 115,
                                  "column": 19
                                },
                                "end": {
                                  "line": 115,
                                  "column": 23
                                }
                              },
                              "name": "emit"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Literal",
                              "start": 4946,
                              "end": 4953,
                              "loc": {
                                "start": {
                                  "line": 115,
                                  "column": 24
                                },
                                "end": {
                                  "line": 115,
                                  "column": 31
                                }
                              },
                              "value": "moved",
                              "rawValue": "moved",
                              "raw": "'moved'"
                            },
                            {
                              "type": "ThisExpression",
                              "start": 4955,
                              "end": 4959,
                              "loc": {
                                "start": {
                                  "line": 115,
                                  "column": 33
                                },
                                "end": {
                                  "line": 115,
                                  "column": 37
                                }
                              }
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 4971,
                      "end": 4993,
                      "loc": {
                        "start": {
                          "line": 116,
                          "column": 8
                        },
                        "end": {
                          "line": 116,
                          "column": 30
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 4971,
                        "end": 4992,
                        "loc": {
                          "start": {
                            "line": 116,
                            "column": 8
                          },
                          "end": {
                            "line": 116,
                            "column": 29
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 4971,
                          "end": 4990,
                          "loc": {
                            "start": {
                              "line": 116,
                              "column": 8
                            },
                            "end": {
                              "line": 116,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 4971,
                            "end": 4975,
                            "loc": {
                              "start": {
                                "line": 116,
                                "column": 8
                              },
                              "end": {
                                "line": 116,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4976,
                            "end": 4990,
                            "loc": {
                              "start": {
                                "line": 116,
                                "column": 13
                              },
                              "end": {
                                "line": 116,
                                "column": 27
                              }
                            },
                            "name": "updateGeometry"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 5008,
              "end": 5252,
              "loc": {
                "start": {
                  "line": 119,
                  "column": 4
                },
                "end": {
                  "line": 124,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 5014,
                "end": 5021,
                "loc": {
                  "start": {
                    "line": 119,
                    "column": 10
                  },
                  "end": {
                    "line": 119,
                    "column": 17
                  }
                },
                "name": "endDrag"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 5021,
                "end": 5252,
                "loc": {
                  "start": {
                    "line": 119,
                    "column": 17
                  },
                  "end": {
                    "line": 124,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 5022,
                    "end": 5028,
                    "loc": {
                      "start": {
                        "line": 119,
                        "column": 18
                      },
                      "end": {
                        "line": 119,
                        "column": 24
                      }
                    },
                    "name": "sketch"
                  },
                  {
                    "type": "Identifier",
                    "start": 5030,
                    "end": 5036,
                    "loc": {
                      "start": {
                        "line": 119,
                        "column": 26
                      },
                      "end": {
                        "line": 119,
                        "column": 32
                      }
                    },
                    "name": "socket"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 5038,
                  "end": 5252,
                  "loc": {
                    "start": {
                      "line": 119,
                      "column": 34
                    },
                    "end": {
                      "line": 124,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 5049,
                      "end": 5192,
                      "loc": {
                        "start": {
                          "line": 120,
                          "column": 8
                        },
                        "end": {
                          "line": 122,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "CallExpression",
                        "start": 5053,
                        "end": 5076,
                        "loc": {
                          "start": {
                            "line": 120,
                            "column": 12
                          },
                          "end": {
                            "line": 120,
                            "column": 35
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 5053,
                          "end": 5070,
                          "loc": {
                            "start": {
                              "line": 120,
                              "column": 12
                            },
                            "end": {
                              "line": 120,
                              "column": 29
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 5053,
                            "end": 5059,
                            "loc": {
                              "start": {
                                "line": 120,
                                "column": 12
                              },
                              "end": {
                                "line": 120,
                                "column": 18
                              }
                            },
                            "name": "sketch"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 5060,
                            "end": 5070,
                            "loc": {
                              "start": {
                                "line": 120,
                                "column": 19
                              },
                              "end": {
                                "line": 120,
                                "column": 29
                              }
                            },
                            "name": "isOnSketch"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ThisExpression",
                            "start": 5071,
                            "end": 5075,
                            "loc": {
                              "start": {
                                "line": 120,
                                "column": 30
                              },
                              "end": {
                                "line": 120,
                                "column": 34
                              }
                            }
                          }
                        ]
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 5078,
                        "end": 5192,
                        "loc": {
                          "start": {
                            "line": 120,
                            "column": 37
                          },
                          "end": {
                            "line": 122,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 5093,
                            "end": 5181,
                            "loc": {
                              "start": {
                                "line": 121,
                                "column": 12
                              },
                              "end": {
                                "line": 121,
                                "column": 100
                              }
                            },
                            "expression": {
                              "type": "AwaitExpression",
                              "start": 5093,
                              "end": 5180,
                              "loc": {
                                "start": {
                                  "line": 121,
                                  "column": 12
                                },
                                "end": {
                                  "line": 121,
                                  "column": 99
                                }
                              },
                              "all": false,
                              "argument": {
                                "type": "CallExpression",
                                "start": 5099,
                                "end": 5180,
                                "loc": {
                                  "start": {
                                    "line": 121,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 121,
                                    "column": 99
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 5099,
                                  "end": 5172,
                                  "loc": {
                                    "start": {
                                      "line": 121,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 121,
                                      "column": 91
                                    }
                                  },
                                  "object": {
                                    "type": "CallExpression",
                                    "start": 5099,
                                    "end": 5164,
                                    "loc": {
                                      "start": {
                                        "line": 121,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 121,
                                        "column": 83
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 5099,
                                      "end": 5137,
                                      "loc": {
                                        "start": {
                                          "line": 121,
                                          "column": 18
                                        },
                                        "end": {
                                          "line": 121,
                                          "column": 56
                                        }
                                      },
                                      "object": {
                                        "type": "CallExpression",
                                        "start": 5099,
                                        "end": 5133,
                                        "loc": {
                                          "start": {
                                            "line": 121,
                                            "column": 18
                                          },
                                          "end": {
                                            "line": 121,
                                            "column": 52
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 5099,
                                          "end": 5125,
                                          "loc": {
                                            "start": {
                                              "line": 121,
                                              "column": 18
                                            },
                                            "end": {
                                              "line": 121,
                                              "column": 44
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 5099,
                                            "end": 5103,
                                            "loc": {
                                              "start": {
                                                "line": 121,
                                                "column": 18
                                              },
                                              "end": {
                                                "line": 121,
                                                "column": 22
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 5104,
                                            "end": 5125,
                                            "loc": {
                                              "start": {
                                                "line": 121,
                                                "column": 23
                                              },
                                              "end": {
                                                "line": 121,
                                                "column": 44
                                              }
                                            },
                                            "name": "prepareUpdateToServer"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 5126,
                                            "end": 5132,
                                            "loc": {
                                              "start": {
                                                "line": 121,
                                                "column": 45
                                              },
                                              "end": {
                                                "line": 121,
                                                "column": 51
                                              }
                                            },
                                            "name": "sketch"
                                          }
                                        ]
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 5134,
                                        "end": 5137,
                                        "loc": {
                                          "start": {
                                            "line": 121,
                                            "column": 53
                                          },
                                          "end": {
                                            "line": 121,
                                            "column": 56
                                          }
                                        },
                                        "name": "and"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "CallExpression",
                                        "start": 5138,
                                        "end": 5163,
                                        "loc": {
                                          "start": {
                                            "line": 121,
                                            "column": 57
                                          },
                                          "end": {
                                            "line": 121,
                                            "column": 82
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 5138,
                                          "end": 5161,
                                          "loc": {
                                            "start": {
                                              "line": 121,
                                              "column": 57
                                            },
                                            "end": {
                                              "line": 121,
                                              "column": 80
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 5138,
                                            "end": 5144,
                                            "loc": {
                                              "start": {
                                                "line": 121,
                                                "column": 57
                                              },
                                              "end": {
                                                "line": 121,
                                                "column": 63
                                              }
                                            },
                                            "name": "sketch"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 5145,
                                            "end": 5161,
                                            "loc": {
                                              "start": {
                                                "line": 121,
                                                "column": 64
                                              },
                                              "end": {
                                                "line": 121,
                                                "column": 80
                                              }
                                            },
                                            "name": "updateFromServer"
                                          },
                                          "computed": false
                                        },
                                        "arguments": []
                                      }
                                    ]
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 5165,
                                    "end": 5172,
                                    "loc": {
                                      "start": {
                                        "line": 121,
                                        "column": 84
                                      },
                                      "end": {
                                        "line": 121,
                                        "column": 91
                                      }
                                    },
                                    "name": "execute"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 5173,
                                    "end": 5179,
                                    "loc": {
                                      "start": {
                                        "line": 121,
                                        "column": 92
                                      },
                                      "end": {
                                        "line": 121,
                                        "column": 98
                                      }
                                    },
                                    "name": "socket"
                                  }
                                ]
                              }
                            }
                          }
                        ]
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 5202,
                      "end": 5245,
                      "loc": {
                        "start": {
                          "line": 123,
                          "column": 8
                        },
                        "end": {
                          "line": 123,
                          "column": 51
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 5202,
                        "end": 5244,
                        "loc": {
                          "start": {
                            "line": 123,
                            "column": 8
                          },
                          "end": {
                            "line": 123,
                            "column": 50
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 5208,
                          "end": 5244,
                          "loc": {
                            "start": {
                              "line": 123,
                              "column": 14
                            },
                            "end": {
                              "line": 123,
                              "column": 50
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 5208,
                            "end": 5217,
                            "loc": {
                              "start": {
                                "line": 123,
                                "column": 14
                              },
                              "end": {
                                "line": 123,
                                "column": 23
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 5208,
                              "end": 5212,
                              "loc": {
                                "start": {
                                  "line": 123,
                                  "column": 14
                                },
                                "end": {
                                  "line": 123,
                                  "column": 18
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5213,
                              "end": 5217,
                              "loc": {
                                "start": {
                                  "line": 123,
                                  "column": 19
                                },
                                "end": {
                                  "line": 123,
                                  "column": 23
                                }
                              },
                              "name": "emit"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Literal",
                              "start": 5218,
                              "end": 5227,
                              "loc": {
                                "start": {
                                  "line": 123,
                                  "column": 24
                                },
                                "end": {
                                  "line": 123,
                                  "column": 33
                                }
                              },
                              "value": "dragend",
                              "rawValue": "dragend",
                              "raw": "'dragend'"
                            },
                            {
                              "type": "Identifier",
                              "start": 5229,
                              "end": 5235,
                              "loc": {
                                "start": {
                                  "line": 123,
                                  "column": 35
                                },
                                "end": {
                                  "line": 123,
                                  "column": 41
                                }
                              },
                              "name": "sketch"
                            },
                            {
                              "type": "Identifier",
                              "start": 5237,
                              "end": 5243,
                              "loc": {
                                "start": {
                                  "line": 123,
                                  "column": 43
                                },
                                "end": {
                                  "line": 123,
                                  "column": 49
                                }
                              },
                              "name": "socket"
                            }
                          ]
                        }
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 5260,
              "end": 5341,
              "loc": {
                "start": {
                  "line": 126,
                  "column": 4
                },
                "end": {
                  "line": 128,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 5260,
                "end": 5270,
                "loc": {
                  "start": {
                    "line": 126,
                    "column": 4
                  },
                  "end": {
                    "line": 126,
                    "column": 14
                  }
                },
                "name": "setVisible"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 5270,
                "end": 5341,
                "loc": {
                  "start": {
                    "line": 126,
                    "column": 14
                  },
                  "end": {
                    "line": 128,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 5271,
                    "end": 5281,
                    "loc": {
                      "start": {
                        "line": 126,
                        "column": 15
                      },
                      "end": {
                        "line": 126,
                        "column": 25
                      }
                    },
                    "name": "visibility"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 5283,
                  "end": 5341,
                  "loc": {
                    "start": {
                      "line": 126,
                      "column": 27
                    },
                    "end": {
                      "line": 128,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 5294,
                      "end": 5334,
                      "loc": {
                        "start": {
                          "line": 127,
                          "column": 8
                        },
                        "end": {
                          "line": 127,
                          "column": 48
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 5294,
                        "end": 5333,
                        "loc": {
                          "start": {
                            "line": 127,
                            "column": 8
                          },
                          "end": {
                            "line": 127,
                            "column": 47
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 5294,
                          "end": 5320,
                          "loc": {
                            "start": {
                              "line": 127,
                              "column": 8
                            },
                            "end": {
                              "line": 127,
                              "column": 34
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 5294,
                            "end": 5312,
                            "loc": {
                              "start": {
                                "line": 127,
                                "column": 8
                              },
                              "end": {
                                "line": 127,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 5294,
                              "end": 5303,
                              "loc": {
                                "start": {
                                  "line": 127,
                                  "column": 8
                                },
                                "end": {
                                  "line": 127,
                                  "column": 17
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 5294,
                                "end": 5298,
                                "loc": {
                                  "start": {
                                    "line": 127,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 127,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 5299,
                                "end": 5303,
                                "loc": {
                                  "start": {
                                    "line": 127,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 127,
                                    "column": 17
                                  }
                                },
                                "name": "mesh"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5304,
                              "end": 5312,
                              "loc": {
                                "start": {
                                  "line": 127,
                                  "column": 18
                                },
                                "end": {
                                  "line": 127,
                                  "column": 26
                                }
                              },
                              "name": "material"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 5313,
                            "end": 5320,
                            "loc": {
                              "start": {
                                "line": 127,
                                "column": 27
                              },
                              "end": {
                                "line": 127,
                                "column": 34
                              }
                            },
                            "name": "visible"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Identifier",
                          "start": 5323,
                          "end": 5333,
                          "loc": {
                            "start": {
                              "line": 127,
                              "column": 37
                            },
                            "end": {
                              "line": 127,
                              "column": 47
                            }
                          },
                          "name": "visibility"
                        }
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 5349,
              "end": 5368,
              "loc": {
                "start": {
                  "line": 130,
                  "column": 4
                },
                "end": {
                  "line": 130,
                  "column": 23
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 5349,
                "end": 5363,
                "loc": {
                  "start": {
                    "line": 130,
                    "column": 4
                  },
                  "end": {
                    "line": 130,
                    "column": 18
                  }
                },
                "name": "updateGeometry"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 5363,
                "end": 5368,
                "loc": {
                  "start": {
                    "line": 130,
                    "column": 18
                  },
                  "end": {
                    "line": 130,
                    "column": 23
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 5366,
                  "end": 5368,
                  "loc": {
                    "start": {
                      "line": 130,
                      "column": 21
                    },
                    "end": {
                      "line": 130,
                      "column": 23
                    }
                  },
                  "body": []
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 5376,
              "end": 5415,
              "loc": {
                "start": {
                  "line": 132,
                  "column": 4
                },
                "end": {
                  "line": 132,
                  "column": 43
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 5376,
                "end": 5396,
                "loc": {
                  "start": {
                    "line": 132,
                    "column": 4
                  },
                  "end": {
                    "line": 132,
                    "column": 24
                  }
                },
                "name": "getAuxiliaryGeometry"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 5396,
                "end": 5415,
                "loc": {
                  "start": {
                    "line": 132,
                    "column": 24
                  },
                  "end": {
                    "line": 132,
                    "column": 43
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 5399,
                  "end": 5415,
                  "loc": {
                    "start": {
                      "line": 132,
                      "column": 27
                    },
                    "end": {
                      "line": 132,
                      "column": 43
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 5401,
                      "end": 5413,
                      "loc": {
                        "start": {
                          "line": 132,
                          "column": 29
                        },
                        "end": {
                          "line": 132,
                          "column": 41
                        }
                      },
                      "argument": {
                        "type": "Literal",
                        "start": 5408,
                        "end": 5412,
                        "loc": {
                          "start": {
                            "line": 132,
                            "column": 36
                          },
                          "end": {
                            "line": 132,
                            "column": 40
                          }
                        },
                        "value": null,
                        "rawValue": null,
                        "raw": "null"
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 5423,
              "end": 5452,
              "loc": {
                "start": {
                  "line": 134,
                  "column": 4
                },
                "end": {
                  "line": 134,
                  "column": 33
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 5423,
                "end": 5446,
                "loc": {
                  "start": {
                    "line": 134,
                    "column": 4
                  },
                  "end": {
                    "line": 134,
                    "column": 27
                  }
                },
                "name": "updateAuxiliaryGeometry"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 5446,
                "end": 5452,
                "loc": {
                  "start": {
                    "line": 134,
                    "column": 27
                  },
                  "end": {
                    "line": 134,
                    "column": 33
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 5449,
                  "end": 5452,
                  "loc": {
                    "start": {
                      "line": 134,
                      "column": 30
                    },
                    "end": {
                      "line": 134,
                      "column": 33
                    }
                  },
                  "body": [],
                  "leadingComments": null,
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": "required method for updateSizes",
                  "start": 5460,
                  "end": 5493,
                  "loc": {
                    "start": {
                      "line": 136,
                      "column": 4
                    },
                    "end": {
                      "line": 136,
                      "column": 37
                    }
                  },
                  "range": [
                    5460,
                    5493
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 5499,
              "end": 5705,
              "loc": {
                "start": {
                  "line": 137,
                  "column": 4
                },
                "end": {
                  "line": 142,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 5499,
                "end": 5511,
                "loc": {
                  "start": {
                    "line": 137,
                    "column": 4
                  },
                  "end": {
                    "line": 137,
                    "column": 16
                  }
                },
                "name": "setGeomSizes",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 5511,
                "end": 5705,
                "loc": {
                  "start": {
                    "line": 137,
                    "column": 16
                  },
                  "end": {
                    "line": 142,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 5512,
                    "end": 5517,
                    "loc": {
                      "start": {
                        "line": 137,
                        "column": 17
                      },
                      "end": {
                        "line": 137,
                        "column": 22
                      }
                    },
                    "name": "sizes"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 5519,
                  "end": 5705,
                  "loc": {
                    "start": {
                      "line": 137,
                      "column": 24
                    },
                    "end": {
                      "line": 142,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 5530,
                      "end": 5547,
                      "loc": {
                        "start": {
                          "line": 138,
                          "column": 8
                        },
                        "end": {
                          "line": 138,
                          "column": 25
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 5534,
                          "end": 5546,
                          "loc": {
                            "start": {
                              "line": 138,
                              "column": 12
                            },
                            "end": {
                              "line": 138,
                              "column": 24
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 5534,
                            "end": 5535,
                            "loc": {
                              "start": {
                                "line": 138,
                                "column": 12
                              },
                              "end": {
                                "line": 138,
                                "column": 13
                              }
                            },
                            "name": "s"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 5538,
                            "end": 5546,
                            "loc": {
                              "start": {
                                "line": 138,
                                "column": 16
                              },
                              "end": {
                                "line": 138,
                                "column": 24
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 5538,
                              "end": 5543,
                              "loc": {
                                "start": {
                                  "line": 138,
                                  "column": 16
                                },
                                "end": {
                                  "line": 138,
                                  "column": 21
                                }
                              },
                              "name": "sizes"
                            },
                            "property": {
                              "type": "Literal",
                              "start": 5544,
                              "end": 5545,
                              "loc": {
                                "start": {
                                  "line": 138,
                                  "column": 22
                                },
                                "end": {
                                  "line": 138,
                                  "column": 23
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            },
                            "computed": true
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 5557,
                      "end": 5586,
                      "loc": {
                        "start": {
                          "line": 139,
                          "column": 8
                        },
                        "end": {
                          "line": 139,
                          "column": 37
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 5557,
                        "end": 5585,
                        "loc": {
                          "start": {
                            "line": 139,
                            "column": 8
                          },
                          "end": {
                            "line": 139,
                            "column": 36
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 5557,
                          "end": 5576,
                          "loc": {
                            "start": {
                              "line": 139,
                              "column": 8
                            },
                            "end": {
                              "line": 139,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 5557,
                            "end": 5572,
                            "loc": {
                              "start": {
                                "line": 139,
                                "column": 8
                              },
                              "end": {
                                "line": 139,
                                "column": 23
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 5557,
                              "end": 5566,
                              "loc": {
                                "start": {
                                  "line": 139,
                                  "column": 8
                                },
                                "end": {
                                  "line": 139,
                                  "column": 17
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 5557,
                                "end": 5561,
                                "loc": {
                                  "start": {
                                    "line": 139,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 139,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 5562,
                                "end": 5566,
                                "loc": {
                                  "start": {
                                    "line": 139,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 139,
                                    "column": 17
                                  }
                                },
                                "name": "mesh"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5567,
                              "end": 5572,
                              "loc": {
                                "start": {
                                  "line": 139,
                                  "column": 18
                                },
                                "end": {
                                  "line": 139,
                                  "column": 23
                                }
                              },
                              "name": "scale"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 5573,
                            "end": 5576,
                            "loc": {
                              "start": {
                                "line": 139,
                                "column": 24
                              },
                              "end": {
                                "line": 139,
                                "column": 27
                              }
                            },
                            "name": "set"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 5577,
                            "end": 5578,
                            "loc": {
                              "start": {
                                "line": 139,
                                "column": 28
                              },
                              "end": {
                                "line": 139,
                                "column": 29
                              }
                            },
                            "name": "s"
                          },
                          {
                            "type": "Identifier",
                            "start": 5580,
                            "end": 5581,
                            "loc": {
                              "start": {
                                "line": 139,
                                "column": 31
                              },
                              "end": {
                                "line": 139,
                                "column": 32
                              }
                            },
                            "name": "s"
                          },
                          {
                            "type": "Identifier",
                            "start": 5583,
                            "end": 5584,
                            "loc": {
                              "start": {
                                "line": 139,
                                "column": 34
                              },
                              "end": {
                                "line": 139,
                                "column": 35
                              }
                            },
                            "name": "s"
                          }
                        ]
                      }
                    },
                    {
                      "type": "IfStatement",
                      "start": 5596,
                      "end": 5698,
                      "loc": {
                        "start": {
                          "line": 140,
                          "column": 8
                        },
                        "end": {
                          "line": 141,
                          "column": 62
                        }
                      },
                      "test": {
                        "type": "MemberExpression",
                        "start": 5600,
                        "end": 5633,
                        "loc": {
                          "start": {
                            "line": 140,
                            "column": 12
                          },
                          "end": {
                            "line": 140,
                            "column": 45
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 5600,
                          "end": 5625,
                          "loc": {
                            "start": {
                              "line": 140,
                              "column": 12
                            },
                            "end": {
                              "line": 140,
                              "column": 37
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 5600,
                            "end": 5604,
                            "loc": {
                              "start": {
                                "line": 140,
                                "column": 12
                              },
                              "end": {
                                "line": 140,
                                "column": 16
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 5605,
                            "end": 5625,
                            "loc": {
                              "start": {
                                "line": 140,
                                "column": 17
                              },
                              "end": {
                                "line": 140,
                                "column": 37
                              }
                            },
                            "name": "constraintsSubstrate"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 5626,
                          "end": 5633,
                          "loc": {
                            "start": {
                              "line": 140,
                              "column": 38
                            },
                            "end": {
                              "line": 140,
                              "column": 45
                            }
                          },
                          "name": "visible"
                        },
                        "computed": false
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 5648,
                        "end": 5698,
                        "loc": {
                          "start": {
                            "line": 141,
                            "column": 12
                          },
                          "end": {
                            "line": 141,
                            "column": 62
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 5648,
                          "end": 5697,
                          "loc": {
                            "start": {
                              "line": 141,
                              "column": 12
                            },
                            "end": {
                              "line": 141,
                              "column": 61
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 5648,
                            "end": 5691,
                            "loc": {
                              "start": {
                                "line": 141,
                                "column": 12
                              },
                              "end": {
                                "line": 141,
                                "column": 55
                              }
                            },
                            "object": {
                              "type": "CallExpression",
                              "start": 5648,
                              "end": 5673,
                              "loc": {
                                "start": {
                                  "line": 141,
                                  "column": 12
                                },
                                "end": {
                                  "line": 141,
                                  "column": 37
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 5648,
                                "end": 5667,
                                "loc": {
                                  "start": {
                                    "line": 141,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 141,
                                    "column": 31
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 5648,
                                  "end": 5654,
                                  "loc": {
                                    "start": {
                                      "line": 141,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 141,
                                      "column": 18
                                    }
                                  },
                                  "name": "Sketch"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 5655,
                                  "end": 5667,
                                  "loc": {
                                    "start": {
                                      "line": 141,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 141,
                                      "column": 31
                                    }
                                  },
                                  "name": "FindSketchOf"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ThisExpression",
                                  "start": 5668,
                                  "end": 5672,
                                  "loc": {
                                    "start": {
                                      "line": 141,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 141,
                                      "column": 36
                                    }
                                  }
                                }
                              ]
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5674,
                              "end": 5691,
                              "loc": {
                                "start": {
                                  "line": 141,
                                  "column": 38
                                },
                                "end": {
                                  "line": 141,
                                  "column": 55
                                }
                              },
                              "name": "updateConstraints"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "ThisExpression",
                              "start": 5692,
                              "end": 5696,
                              "loc": {
                                "start": {
                                  "line": 141,
                                  "column": 56
                                },
                                "end": {
                                  "line": 141,
                                  "column": 60
                                }
                              }
                            }
                          ]
                        }
                      },
                      "alternate": null
                    }
                  ]
                }
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": "required method for updateSizes",
                  "start": 5460,
                  "end": 5493,
                  "loc": {
                    "start": {
                      "line": 136,
                      "column": 4
                    },
                    "end": {
                      "line": 136,
                      "column": 37
                    }
                  },
                  "range": [
                    5460,
                    5493
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 5713,
              "end": 5846,
              "loc": {
                "start": {
                  "line": 144,
                  "column": 4
                },
                "end": {
                  "line": 147,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 5713,
                "end": 5733,
                "loc": {
                  "start": {
                    "line": 144,
                    "column": 4
                  },
                  "end": {
                    "line": 144,
                    "column": 24
                  }
                },
                "name": "getSubstratePosition"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 5733,
                "end": 5846,
                "loc": {
                  "start": {
                    "line": 144,
                    "column": 24
                  },
                  "end": {
                    "line": 147,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 5734,
                    "end": 5737,
                    "loc": {
                      "start": {
                        "line": 144,
                        "column": 25
                      },
                      "end": {
                        "line": 144,
                        "column": 28
                      }
                    },
                    "name": "len"
                  },
                  {
                    "type": "Identifier",
                    "start": 5739,
                    "end": 5743,
                    "loc": {
                      "start": {
                        "line": 144,
                        "column": 30
                      },
                      "end": {
                        "line": 144,
                        "column": 34
                      }
                    },
                    "name": "size"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 5745,
                  "end": 5846,
                  "loc": {
                    "start": {
                      "line": 144,
                      "column": 36
                    },
                    "end": {
                      "line": 147,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 5756,
                      "end": 5818,
                      "loc": {
                        "start": {
                          "line": 145,
                          "column": 8
                        },
                        "end": {
                          "line": 145,
                          "column": 70
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 5760,
                          "end": 5817,
                          "loc": {
                            "start": {
                              "line": 145,
                              "column": 12
                            },
                            "end": {
                              "line": 145,
                              "column": 69
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 5760,
                            "end": 5763,
                            "loc": {
                              "start": {
                                "line": 145,
                                "column": 12
                              },
                              "end": {
                                "line": 145,
                                "column": 15
                              }
                            },
                            "name": "pos"
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 5766,
                            "end": 5817,
                            "loc": {
                              "start": {
                                "line": 145,
                                "column": 18
                              },
                              "end": {
                                "line": 145,
                                "column": 69
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 5770,
                              "end": 5783,
                              "loc": {
                                "start": {
                                  "line": 145,
                                  "column": 22
                                },
                                "end": {
                                  "line": 145,
                                  "column": 35
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 5770,
                                "end": 5775,
                                "loc": {
                                  "start": {
                                    "line": 145,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 145,
                                    "column": 27
                                  }
                                },
                                "name": "THREE"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 5776,
                                "end": 5783,
                                "loc": {
                                  "start": {
                                    "line": 145,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 145,
                                    "column": 35
                                  }
                                },
                                "name": "Vector3"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "BinaryExpression",
                                "start": 5784,
                                "end": 5798,
                                "loc": {
                                  "start": {
                                    "line": 145,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 145,
                                    "column": 50
                                  }
                                },
                                "left": {
                                  "type": "BinaryExpression",
                                  "start": 5784,
                                  "end": 5791,
                                  "loc": {
                                    "start": {
                                      "line": 145,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 145,
                                      "column": 43
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 5784,
                                    "end": 5787,
                                    "loc": {
                                      "start": {
                                        "line": 145,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 145,
                                        "column": 39
                                      }
                                    },
                                    "name": "len"
                                  },
                                  "operator": "/",
                                  "right": {
                                    "type": "Literal",
                                    "start": 5790,
                                    "end": 5791,
                                    "loc": {
                                      "start": {
                                        "line": 145,
                                        "column": 42
                                      },
                                      "end": {
                                        "line": 145,
                                        "column": 43
                                      }
                                    },
                                    "value": 2,
                                    "rawValue": 2,
                                    "raw": "2"
                                  }
                                },
                                "operator": "+",
                                "right": {
                                  "type": "Identifier",
                                  "start": 5794,
                                  "end": 5798,
                                  "loc": {
                                    "start": {
                                      "line": 145,
                                      "column": 46
                                    },
                                    "end": {
                                      "line": 145,
                                      "column": 50
                                    }
                                  },
                                  "name": "size"
                                }
                              },
                              {
                                "type": "BinaryExpression",
                                "start": 5800,
                                "end": 5813,
                                "loc": {
                                  "start": {
                                    "line": 145,
                                    "column": 52
                                  },
                                  "end": {
                                    "line": 145,
                                    "column": 65
                                  }
                                },
                                "left": {
                                  "type": "BinaryExpression",
                                  "start": 5800,
                                  "end": 5806,
                                  "loc": {
                                    "start": {
                                      "line": 145,
                                      "column": 52
                                    },
                                    "end": {
                                      "line": 145,
                                      "column": 58
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 5800,
                                    "end": 5804,
                                    "loc": {
                                      "start": {
                                        "line": 145,
                                        "column": 52
                                      },
                                      "end": {
                                        "line": 145,
                                        "column": 56
                                      }
                                    },
                                    "name": "size"
                                  },
                                  "operator": "/",
                                  "right": {
                                    "type": "Literal",
                                    "start": 5805,
                                    "end": 5806,
                                    "loc": {
                                      "start": {
                                        "line": 145,
                                        "column": 57
                                      },
                                      "end": {
                                        "line": 145,
                                        "column": 58
                                      }
                                    },
                                    "value": 2,
                                    "rawValue": 2,
                                    "raw": "2"
                                  }
                                },
                                "operator": "+",
                                "right": {
                                  "type": "Identifier",
                                  "start": 5809,
                                  "end": 5813,
                                  "loc": {
                                    "start": {
                                      "line": 145,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 145,
                                      "column": 65
                                    }
                                  },
                                  "name": "size"
                                }
                              },
                              {
                                "type": "Literal",
                                "start": 5815,
                                "end": 5816,
                                "loc": {
                                  "start": {
                                    "line": 145,
                                    "column": 67
                                  },
                                  "end": {
                                    "line": 145,
                                    "column": 68
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 5828,
                      "end": 5839,
                      "loc": {
                        "start": {
                          "line": 146,
                          "column": 8
                        },
                        "end": {
                          "line": 146,
                          "column": 19
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 5835,
                        "end": 5838,
                        "loc": {
                          "start": {
                            "line": 146,
                            "column": 15
                          },
                          "end": {
                            "line": 146,
                            "column": 18
                          }
                        },
                        "name": "pos"
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 5854,
              "end": 5948,
              "loc": {
                "start": {
                  "line": 149,
                  "column": 4
                },
                "end": {
                  "line": 151,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 5854,
                "end": 5862,
                "loc": {
                  "start": {
                    "line": 149,
                    "column": 4
                  },
                  "end": {
                    "line": 149,
                    "column": 12
                  }
                },
                "name": "getState"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 5862,
                "end": 5948,
                "loc": {
                  "start": {
                    "line": 149,
                    "column": 12
                  },
                  "end": {
                    "line": 151,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 5865,
                  "end": 5948,
                  "loc": {
                    "start": {
                      "line": 149,
                      "column": 15
                    },
                    "end": {
                      "line": 151,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 5876,
                      "end": 5941,
                      "loc": {
                        "start": {
                          "line": 150,
                          "column": 8
                        },
                        "end": {
                          "line": 150,
                          "column": 73
                        }
                      },
                      "argument": {
                        "type": "NewExpression",
                        "start": 5883,
                        "end": 5940,
                        "loc": {
                          "start": {
                            "line": 150,
                            "column": 15
                          },
                          "end": {
                            "line": 150,
                            "column": 72
                          }
                        },
                        "callee": {
                          "type": "Identifier",
                          "start": 5887,
                          "end": 5890,
                          "loc": {
                            "start": {
                              "line": 150,
                              "column": 19
                            },
                            "end": {
                              "line": 150,
                              "column": 22
                            }
                          },
                          "name": "Map"
                        },
                        "arguments": [
                          {
                            "type": "ArrayExpression",
                            "start": 5891,
                            "end": 5939,
                            "loc": {
                              "start": {
                                "line": 150,
                                "column": 23
                              },
                              "end": {
                                "line": 150,
                                "column": 71
                              }
                            },
                            "elements": [
                              {
                                "type": "ArrayExpression",
                                "start": 5892,
                                "end": 5914,
                                "loc": {
                                  "start": {
                                    "line": 150,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 150,
                                    "column": 46
                                  }
                                },
                                "elements": [
                                  {
                                    "type": "Literal",
                                    "start": 5893,
                                    "end": 5896,
                                    "loc": {
                                      "start": {
                                        "line": 150,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 150,
                                        "column": 28
                                      }
                                    },
                                    "value": "x",
                                    "rawValue": "x",
                                    "raw": "'x'"
                                  },
                                  {
                                    "type": "MemberExpression",
                                    "start": 5898,
                                    "end": 5913,
                                    "loc": {
                                      "start": {
                                        "line": 150,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 150,
                                        "column": 45
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 5898,
                                      "end": 5911,
                                      "loc": {
                                        "start": {
                                          "line": 150,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 150,
                                          "column": 43
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 5898,
                                        "end": 5902,
                                        "loc": {
                                          "start": {
                                            "line": 150,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 150,
                                            "column": 34
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 5903,
                                        "end": 5911,
                                        "loc": {
                                          "start": {
                                            "line": 150,
                                            "column": 35
                                          },
                                          "end": {
                                            "line": 150,
                                            "column": 43
                                          }
                                        },
                                        "name": "position"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 5912,
                                      "end": 5913,
                                      "loc": {
                                        "start": {
                                          "line": 150,
                                          "column": 44
                                        },
                                        "end": {
                                          "line": 150,
                                          "column": 45
                                        }
                                      },
                                      "name": "x"
                                    },
                                    "computed": false
                                  }
                                ]
                              },
                              {
                                "type": "ArrayExpression",
                                "start": 5916,
                                "end": 5938,
                                "loc": {
                                  "start": {
                                    "line": 150,
                                    "column": 48
                                  },
                                  "end": {
                                    "line": 150,
                                    "column": 70
                                  }
                                },
                                "elements": [
                                  {
                                    "type": "Literal",
                                    "start": 5917,
                                    "end": 5920,
                                    "loc": {
                                      "start": {
                                        "line": 150,
                                        "column": 49
                                      },
                                      "end": {
                                        "line": 150,
                                        "column": 52
                                      }
                                    },
                                    "value": "y",
                                    "rawValue": "y",
                                    "raw": "'y'"
                                  },
                                  {
                                    "type": "MemberExpression",
                                    "start": 5922,
                                    "end": 5937,
                                    "loc": {
                                      "start": {
                                        "line": 150,
                                        "column": 54
                                      },
                                      "end": {
                                        "line": 150,
                                        "column": 69
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 5922,
                                      "end": 5935,
                                      "loc": {
                                        "start": {
                                          "line": 150,
                                          "column": 54
                                        },
                                        "end": {
                                          "line": 150,
                                          "column": 67
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 5922,
                                        "end": 5926,
                                        "loc": {
                                          "start": {
                                            "line": 150,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 150,
                                            "column": 58
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 5927,
                                        "end": 5935,
                                        "loc": {
                                          "start": {
                                            "line": 150,
                                            "column": 59
                                          },
                                          "end": {
                                            "line": 150,
                                            "column": 67
                                          }
                                        },
                                        "name": "position"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 5936,
                                      "end": 5937,
                                      "loc": {
                                        "start": {
                                          "line": 150,
                                          "column": 68
                                        },
                                        "end": {
                                          "line": 150,
                                          "column": 69
                                        }
                                      },
                                      "name": "y"
                                    },
                                    "computed": false
                                  }
                                ]
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 5956,
              "end": 6100,
              "loc": {
                "start": {
                  "line": 153,
                  "column": 4
                },
                "end": {
                  "line": 157,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 5956,
                "end": 5970,
                "loc": {
                  "start": {
                    "line": 153,
                    "column": 4
                  },
                  "end": {
                    "line": 153,
                    "column": 18
                  }
                },
                "name": "applyStateDiff"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 5970,
                "end": 6100,
                "loc": {
                  "start": {
                    "line": 153,
                    "column": 18
                  },
                  "end": {
                    "line": 157,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 5971,
                    "end": 5980,
                    "loc": {
                      "start": {
                        "line": 153,
                        "column": 19
                      },
                      "end": {
                        "line": 153,
                        "column": 28
                      }
                    },
                    "name": "stateDiff"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 5982,
                  "end": 6100,
                  "loc": {
                    "start": {
                      "line": 153,
                      "column": 30
                    },
                    "end": {
                      "line": 157,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 5993,
                      "end": 6093,
                      "loc": {
                        "start": {
                          "line": 154,
                          "column": 8
                        },
                        "end": {
                          "line": 156,
                          "column": 17
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 5993,
                        "end": 6092,
                        "loc": {
                          "start": {
                            "line": 154,
                            "column": 8
                          },
                          "end": {
                            "line": 156,
                            "column": 16
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 5993,
                          "end": 6010,
                          "loc": {
                            "start": {
                              "line": 154,
                              "column": 8
                            },
                            "end": {
                              "line": 154,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 5993,
                            "end": 6002,
                            "loc": {
                              "start": {
                                "line": 154,
                                "column": 8
                              },
                              "end": {
                                "line": 154,
                                "column": 17
                              }
                            },
                            "name": "stateDiff"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6003,
                            "end": 6010,
                            "loc": {
                              "start": {
                                "line": 154,
                                "column": 18
                              },
                              "end": {
                                "line": 154,
                                "column": 25
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "FunctionExpression",
                            "start": 6011,
                            "end": 6085,
                            "loc": {
                              "start": {
                                "line": 154,
                                "column": 26
                              },
                              "end": {
                                "line": 156,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 6020,
                                "end": 6025,
                                "loc": {
                                  "start": {
                                    "line": 154,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 154,
                                    "column": 40
                                  }
                                },
                                "name": "value"
                              },
                              {
                                "type": "Identifier",
                                "start": 6027,
                                "end": 6030,
                                "loc": {
                                  "start": {
                                    "line": 154,
                                    "column": 42
                                  },
                                  "end": {
                                    "line": 154,
                                    "column": 45
                                  }
                                },
                                "name": "key"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 6032,
                              "end": 6085,
                              "loc": {
                                "start": {
                                  "line": 154,
                                  "column": 47
                                },
                                "end": {
                                  "line": 156,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 6047,
                                  "end": 6074,
                                  "loc": {
                                    "start": {
                                      "line": 155,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 155,
                                      "column": 39
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 6047,
                                    "end": 6073,
                                    "loc": {
                                      "start": {
                                        "line": 155,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 155,
                                        "column": 38
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 6047,
                                      "end": 6065,
                                      "loc": {
                                        "start": {
                                          "line": 155,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 155,
                                          "column": 30
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 6047,
                                        "end": 6060,
                                        "loc": {
                                          "start": {
                                            "line": 155,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 155,
                                            "column": 25
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 6047,
                                          "end": 6051,
                                          "loc": {
                                            "start": {
                                              "line": 155,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 155,
                                              "column": 16
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 6052,
                                          "end": 6060,
                                          "loc": {
                                            "start": {
                                              "line": 155,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 155,
                                              "column": 25
                                            }
                                          },
                                          "name": "position"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 6061,
                                        "end": 6064,
                                        "loc": {
                                          "start": {
                                            "line": 155,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 155,
                                            "column": 29
                                          }
                                        },
                                        "name": "key"
                                      },
                                      "computed": true
                                    },
                                    "right": {
                                      "type": "Identifier",
                                      "start": 6068,
                                      "end": 6073,
                                      "loc": {
                                        "start": {
                                          "line": 155,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 155,
                                          "column": 38
                                        }
                                      },
                                      "name": "value"
                                    }
                                  }
                                }
                              ]
                            }
                          },
                          {
                            "type": "ThisExpression",
                            "start": 6087,
                            "end": 6091,
                            "loc": {
                              "start": {
                                "line": 156,
                                "column": 11
                              },
                              "end": {
                                "line": 156,
                                "column": 15
                              }
                            }
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 6108,
              "end": 6309,
              "loc": {
                "start": {
                  "line": 159,
                  "column": 4
                },
                "end": {
                  "line": 165,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 6108,
                "end": 6120,
                "loc": {
                  "start": {
                    "line": 159,
                    "column": 4
                  },
                  "end": {
                    "line": 159,
                    "column": 16
                  }
                },
                "name": "addStateDiff"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 6120,
                "end": 6309,
                "loc": {
                  "start": {
                    "line": 159,
                    "column": 16
                  },
                  "end": {
                    "line": 165,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 6121,
                    "end": 6130,
                    "loc": {
                      "start": {
                        "line": 159,
                        "column": 17
                      },
                      "end": {
                        "line": 159,
                        "column": 26
                      }
                    },
                    "name": "stateDiff"
                  },
                  {
                    "type": "Identifier",
                    "start": 6132,
                    "end": 6137,
                    "loc": {
                      "start": {
                        "line": 159,
                        "column": 28
                      },
                      "end": {
                        "line": 159,
                        "column": 33
                      }
                    },
                    "name": "alpha"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 6139,
                  "end": 6309,
                  "loc": {
                    "start": {
                      "line": 159,
                      "column": 35
                    },
                    "end": {
                      "line": 165,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 6150,
                      "end": 6181,
                      "loc": {
                        "start": {
                          "line": 160,
                          "column": 8
                        },
                        "end": {
                          "line": 160,
                          "column": 39
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 6154,
                        "end": 6172,
                        "loc": {
                          "start": {
                            "line": 160,
                            "column": 12
                          },
                          "end": {
                            "line": 160,
                            "column": 30
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 6154,
                          "end": 6163,
                          "loc": {
                            "start": {
                              "line": 160,
                              "column": 12
                            },
                            "end": {
                              "line": 160,
                              "column": 21
                            }
                          },
                          "name": "stateDiff"
                        },
                        "operator": "===",
                        "right": {
                          "type": "Literal",
                          "start": 6168,
                          "end": 6172,
                          "loc": {
                            "start": {
                              "line": 160,
                              "column": 26
                            },
                            "end": {
                              "line": 160,
                              "column": 30
                            }
                          },
                          "value": null,
                          "rawValue": null,
                          "raw": "null"
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 6174,
                        "end": 6181,
                        "loc": {
                          "start": {
                            "line": 160,
                            "column": 32
                          },
                          "end": {
                            "line": 160,
                            "column": 39
                          }
                        },
                        "argument": null
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 6193,
                      "end": 6302,
                      "loc": {
                        "start": {
                          "line": 162,
                          "column": 8
                        },
                        "end": {
                          "line": 164,
                          "column": 17
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 6193,
                        "end": 6301,
                        "loc": {
                          "start": {
                            "line": 162,
                            "column": 8
                          },
                          "end": {
                            "line": 164,
                            "column": 16
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 6193,
                          "end": 6210,
                          "loc": {
                            "start": {
                              "line": 162,
                              "column": 8
                            },
                            "end": {
                              "line": 162,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 6193,
                            "end": 6202,
                            "loc": {
                              "start": {
                                "line": 162,
                                "column": 8
                              },
                              "end": {
                                "line": 162,
                                "column": 17
                              }
                            },
                            "name": "stateDiff"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6203,
                            "end": 6210,
                            "loc": {
                              "start": {
                                "line": 162,
                                "column": 18
                              },
                              "end": {
                                "line": 162,
                                "column": 25
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "FunctionExpression",
                            "start": 6211,
                            "end": 6294,
                            "loc": {
                              "start": {
                                "line": 162,
                                "column": 26
                              },
                              "end": {
                                "line": 164,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 6220,
                                "end": 6225,
                                "loc": {
                                  "start": {
                                    "line": 162,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 162,
                                    "column": 40
                                  }
                                },
                                "name": "value"
                              },
                              {
                                "type": "Identifier",
                                "start": 6227,
                                "end": 6230,
                                "loc": {
                                  "start": {
                                    "line": 162,
                                    "column": 42
                                  },
                                  "end": {
                                    "line": 162,
                                    "column": 45
                                  }
                                },
                                "name": "key"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 6232,
                              "end": 6294,
                              "loc": {
                                "start": {
                                  "line": 162,
                                  "column": 47
                                },
                                "end": {
                                  "line": 164,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 6247,
                                  "end": 6283,
                                  "loc": {
                                    "start": {
                                      "line": 163,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 163,
                                      "column": 48
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 6247,
                                    "end": 6282,
                                    "loc": {
                                      "start": {
                                        "line": 163,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 163,
                                        "column": 47
                                      }
                                    },
                                    "operator": "+=",
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 6247,
                                      "end": 6265,
                                      "loc": {
                                        "start": {
                                          "line": 163,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 163,
                                          "column": 30
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 6247,
                                        "end": 6260,
                                        "loc": {
                                          "start": {
                                            "line": 163,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 163,
                                            "column": 25
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 6247,
                                          "end": 6251,
                                          "loc": {
                                            "start": {
                                              "line": 163,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 163,
                                              "column": 16
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 6252,
                                          "end": 6260,
                                          "loc": {
                                            "start": {
                                              "line": 163,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 163,
                                              "column": 25
                                            }
                                          },
                                          "name": "position"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 6261,
                                        "end": 6264,
                                        "loc": {
                                          "start": {
                                            "line": 163,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 163,
                                            "column": 29
                                          }
                                        },
                                        "name": "key"
                                      },
                                      "computed": true
                                    },
                                    "right": {
                                      "type": "BinaryExpression",
                                      "start": 6269,
                                      "end": 6282,
                                      "loc": {
                                        "start": {
                                          "line": 163,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 163,
                                          "column": 47
                                        }
                                      },
                                      "left": {
                                        "type": "Identifier",
                                        "start": 6269,
                                        "end": 6274,
                                        "loc": {
                                          "start": {
                                            "line": 163,
                                            "column": 34
                                          },
                                          "end": {
                                            "line": 163,
                                            "column": 39
                                          }
                                        },
                                        "name": "value"
                                      },
                                      "operator": "*",
                                      "right": {
                                        "type": "Identifier",
                                        "start": 6277,
                                        "end": 6282,
                                        "loc": {
                                          "start": {
                                            "line": 163,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 163,
                                            "column": 47
                                          }
                                        },
                                        "name": "alpha"
                                      }
                                    }
                                  }
                                }
                              ]
                            }
                          },
                          {
                            "type": "ThisExpression",
                            "start": 6296,
                            "end": 6300,
                            "loc": {
                              "start": {
                                "line": 164,
                                "column": 11
                              },
                              "end": {
                                "line": 164,
                                "column": 15
                              }
                            }
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 6317,
              "end": 6454,
              "loc": {
                "start": {
                  "line": 167,
                  "column": 4
                },
                "end": {
                  "line": 169,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 6317,
                "end": 6335,
                "loc": {
                  "start": {
                    "line": 167,
                    "column": 4
                  },
                  "end": {
                    "line": 167,
                    "column": 22
                  }
                },
                "name": "prepareAddOnServer"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 6335,
                "end": 6454,
                "loc": {
                  "start": {
                    "line": 167,
                    "column": 22
                  },
                  "end": {
                    "line": 169,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 6336,
                    "end": 6342,
                    "loc": {
                      "start": {
                        "line": 167,
                        "column": 23
                      },
                      "end": {
                        "line": 167,
                        "column": 29
                      }
                    },
                    "name": "sketch"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 6344,
                  "end": 6454,
                  "loc": {
                    "start": {
                      "line": 167,
                      "column": 31
                    },
                    "end": {
                      "line": 169,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 6355,
                      "end": 6447,
                      "loc": {
                        "start": {
                          "line": 168,
                          "column": 8
                        },
                        "end": {
                          "line": 168,
                          "column": 100
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 6362,
                        "end": 6446,
                        "loc": {
                          "start": {
                            "line": 168,
                            "column": 15
                          },
                          "end": {
                            "line": 168,
                            "column": 99
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 6362,
                          "end": 6431,
                          "loc": {
                            "start": {
                              "line": 168,
                              "column": 15
                            },
                            "end": {
                              "line": 168,
                              "column": 84
                            }
                          },
                          "object": {
                            "type": "CallExpression",
                            "start": 6362,
                            "end": 6426,
                            "loc": {
                              "start": {
                                "line": 168,
                                "column": 15
                              },
                              "end": {
                                "line": 168,
                                "column": 79
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 6362,
                              "end": 6382,
                              "loc": {
                                "start": {
                                  "line": 168,
                                  "column": 15
                                },
                                "end": {
                                  "line": 168,
                                  "column": 35
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 6362,
                                "end": 6371,
                                "loc": {
                                  "start": {
                                    "line": 168,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 168,
                                    "column": 24
                                  }
                                },
                                "name": "Statement"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6372,
                                "end": 6382,
                                "loc": {
                                  "start": {
                                    "line": 168,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 168,
                                    "column": 35
                                  }
                                },
                                "name": "JSONExport"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "CallExpression",
                                "start": 6383,
                                "end": 6425,
                                "loc": {
                                  "start": {
                                    "line": 168,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 168,
                                    "column": 78
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 6383,
                                  "end": 6402,
                                  "loc": {
                                    "start": {
                                      "line": 168,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 168,
                                      "column": 55
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 6383,
                                    "end": 6393,
                                    "loc": {
                                      "start": {
                                        "line": 168,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 168,
                                        "column": 46
                                      }
                                    },
                                    "name": "Expression"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 6394,
                                    "end": 6402,
                                    "loc": {
                                      "start": {
                                        "line": 168,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 168,
                                        "column": 55
                                      }
                                    },
                                    "name": "AddPoint"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 6403,
                                    "end": 6409,
                                    "loc": {
                                      "start": {
                                        "line": 168,
                                        "column": 56
                                      },
                                      "end": {
                                        "line": 168,
                                        "column": 62
                                      }
                                    },
                                    "name": "sketch"
                                  },
                                  {
                                    "type": "MemberExpression",
                                    "start": 6411,
                                    "end": 6424,
                                    "loc": {
                                      "start": {
                                        "line": 168,
                                        "column": 64
                                      },
                                      "end": {
                                        "line": 168,
                                        "column": 77
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 6411,
                                      "end": 6415,
                                      "loc": {
                                        "start": {
                                          "line": 168,
                                          "column": 64
                                        },
                                        "end": {
                                          "line": 168,
                                          "column": 68
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 6416,
                                      "end": 6424,
                                      "loc": {
                                        "start": {
                                          "line": 168,
                                          "column": 69
                                        },
                                        "end": {
                                          "line": 168,
                                          "column": 77
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  }
                                ]
                              }
                            ]
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6427,
                            "end": 6431,
                            "loc": {
                              "start": {
                                "line": 168,
                                "column": 80
                              },
                              "end": {
                                "line": 168,
                                "column": 84
                              }
                            },
                            "name": "then"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 6432,
                            "end": 6445,
                            "loc": {
                              "start": {
                                "line": 168,
                                "column": 85
                              },
                              "end": {
                                "line": 168,
                                "column": 98
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 6432,
                              "end": 6439,
                              "loc": {
                                "start": {
                                  "line": 168,
                                  "column": 85
                                },
                                "end": {
                                  "line": 168,
                                  "column": 92
                                }
                              },
                              "name": "parseTo"
                            },
                            "arguments": [
                              {
                                "type": "ThisExpression",
                                "start": 6440,
                                "end": 6444,
                                "loc": {
                                  "start": {
                                    "line": 168,
                                    "column": 93
                                  },
                                  "end": {
                                    "line": 168,
                                    "column": 97
                                  }
                                }
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 6462,
              "end": 6661,
              "loc": {
                "start": {
                  "line": 171,
                  "column": 4
                },
                "end": {
                  "line": 177,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 6462,
                "end": 6483,
                "loc": {
                  "start": {
                    "line": 171,
                    "column": 4
                  },
                  "end": {
                    "line": 171,
                    "column": 25
                  }
                },
                "name": "prepareUpdateToServer"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 6483,
                "end": 6661,
                "loc": {
                  "start": {
                    "line": 171,
                    "column": 25
                  },
                  "end": {
                    "line": 177,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 6484,
                    "end": 6490,
                    "loc": {
                      "start": {
                        "line": 171,
                        "column": 26
                      },
                      "end": {
                        "line": 171,
                        "column": 32
                      }
                    },
                    "name": "sketch"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 6492,
                  "end": 6661,
                  "loc": {
                    "start": {
                      "line": 171,
                      "column": 34
                    },
                    "end": {
                      "line": 177,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 6503,
                      "end": 6654,
                      "loc": {
                        "start": {
                          "line": 172,
                          "column": 8
                        },
                        "end": {
                          "line": 176,
                          "column": 31
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 6510,
                        "end": 6653,
                        "loc": {
                          "start": {
                            "line": 172,
                            "column": 15
                          },
                          "end": {
                            "line": 176,
                            "column": 30
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 6510,
                          "end": 6638,
                          "loc": {
                            "start": {
                              "line": 172,
                              "column": 15
                            },
                            "end": {
                              "line": 176,
                              "column": 15
                            }
                          },
                          "object": {
                            "type": "CallExpression",
                            "start": 6510,
                            "end": 6633,
                            "loc": {
                              "start": {
                                "line": 172,
                                "column": 15
                              },
                              "end": {
                                "line": 176,
                                "column": 10
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 6510,
                              "end": 6530,
                              "loc": {
                                "start": {
                                  "line": 172,
                                  "column": 15
                                },
                                "end": {
                                  "line": 172,
                                  "column": 35
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 6510,
                                "end": 6519,
                                "loc": {
                                  "start": {
                                    "line": 172,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 172,
                                    "column": 24
                                  }
                                },
                                "name": "Statement"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6520,
                                "end": 6530,
                                "loc": {
                                  "start": {
                                    "line": 172,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 172,
                                    "column": 35
                                  }
                                },
                                "name": "JSONExport"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "CallExpression",
                                "start": 6531,
                                "end": 6632,
                                "loc": {
                                  "start": {
                                    "line": 172,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 176,
                                    "column": 9
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 6531,
                                  "end": 6553,
                                  "loc": {
                                    "start": {
                                      "line": 172,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 172,
                                      "column": 58
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 6531,
                                    "end": 6541,
                                    "loc": {
                                      "start": {
                                        "line": 172,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 172,
                                        "column": 46
                                      }
                                    },
                                    "name": "Expression"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 6542,
                                    "end": 6553,
                                    "loc": {
                                      "start": {
                                        "line": 172,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 172,
                                        "column": 58
                                      }
                                    },
                                    "name": "UpdatePoint"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 6568,
                                    "end": 6574,
                                    "loc": {
                                      "start": {
                                        "line": 173,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 173,
                                        "column": 18
                                      }
                                    },
                                    "name": "sketch"
                                  },
                                  {
                                    "type": "ThisExpression",
                                    "start": 6589,
                                    "end": 6593,
                                    "loc": {
                                      "start": {
                                        "line": 174,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 174,
                                        "column": 16
                                      }
                                    }
                                  },
                                  {
                                    "type": "MemberExpression",
                                    "start": 6608,
                                    "end": 6621,
                                    "loc": {
                                      "start": {
                                        "line": 175,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 175,
                                        "column": 25
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 6608,
                                      "end": 6612,
                                      "loc": {
                                        "start": {
                                          "line": 175,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 175,
                                          "column": 16
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 6613,
                                      "end": 6621,
                                      "loc": {
                                        "start": {
                                          "line": 175,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 175,
                                          "column": 25
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  }
                                ]
                              }
                            ]
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6634,
                            "end": 6638,
                            "loc": {
                              "start": {
                                "line": 176,
                                "column": 11
                              },
                              "end": {
                                "line": 176,
                                "column": 15
                              }
                            },
                            "name": "then"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 6639,
                            "end": 6652,
                            "loc": {
                              "start": {
                                "line": 176,
                                "column": 16
                              },
                              "end": {
                                "line": 176,
                                "column": 29
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 6639,
                              "end": 6646,
                              "loc": {
                                "start": {
                                  "line": 176,
                                  "column": 16
                                },
                                "end": {
                                  "line": 176,
                                  "column": 23
                                }
                              },
                              "name": "parseTo"
                            },
                            "arguments": [
                              {
                                "type": "ThisExpression",
                                "start": 6647,
                                "end": 6651,
                                "loc": {
                                  "start": {
                                    "line": 176,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 176,
                                    "column": 28
                                  }
                                }
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 6669,
              "end": 6779,
              "loc": {
                "start": {
                  "line": 179,
                  "column": 4
                },
                "end": {
                  "line": 181,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 6669,
                "end": 6690,
                "loc": {
                  "start": {
                    "line": 179,
                    "column": 4
                  },
                  "end": {
                    "line": 179,
                    "column": 25
                  }
                },
                "name": "prepareRemoveOnServer"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 6690,
                "end": 6779,
                "loc": {
                  "start": {
                    "line": 179,
                    "column": 25
                  },
                  "end": {
                    "line": 181,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 6691,
                    "end": 6697,
                    "loc": {
                      "start": {
                        "line": 179,
                        "column": 26
                      },
                      "end": {
                        "line": 179,
                        "column": 32
                      }
                    },
                    "name": "sketch"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 6699,
                  "end": 6779,
                  "loc": {
                    "start": {
                      "line": 179,
                      "column": 34
                    },
                    "end": {
                      "line": 181,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 6710,
                      "end": 6772,
                      "loc": {
                        "start": {
                          "line": 180,
                          "column": 8
                        },
                        "end": {
                          "line": 180,
                          "column": 70
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 6717,
                        "end": 6771,
                        "loc": {
                          "start": {
                            "line": 180,
                            "column": 15
                          },
                          "end": {
                            "line": 180,
                            "column": 69
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 6717,
                          "end": 6733,
                          "loc": {
                            "start": {
                              "line": 180,
                              "column": 15
                            },
                            "end": {
                              "line": 180,
                              "column": 31
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 6717,
                            "end": 6726,
                            "loc": {
                              "start": {
                                "line": 180,
                                "column": 15
                              },
                              "end": {
                                "line": 180,
                                "column": 24
                              }
                            },
                            "name": "Statement"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6727,
                            "end": 6733,
                            "loc": {
                              "start": {
                                "line": 180,
                                "column": 25
                              },
                              "end": {
                                "line": 180,
                                "column": 31
                              }
                            },
                            "name": "Return"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 6734,
                            "end": 6770,
                            "loc": {
                              "start": {
                                "line": 180,
                                "column": 32
                              },
                              "end": {
                                "line": 180,
                                "column": 68
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 6734,
                              "end": 6756,
                              "loc": {
                                "start": {
                                  "line": 180,
                                  "column": 32
                                },
                                "end": {
                                  "line": 180,
                                  "column": 54
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 6734,
                                "end": 6744,
                                "loc": {
                                  "start": {
                                    "line": 180,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 180,
                                    "column": 42
                                  }
                                },
                                "name": "Expression"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6745,
                                "end": 6756,
                                "loc": {
                                  "start": {
                                    "line": 180,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 180,
                                    "column": 54
                                  }
                                },
                                "name": "RemovePoint"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 6757,
                                "end": 6763,
                                "loc": {
                                  "start": {
                                    "line": 180,
                                    "column": 55
                                  },
                                  "end": {
                                    "line": 180,
                                    "column": 61
                                  }
                                },
                                "name": "sketch"
                              },
                              {
                                "type": "ThisExpression",
                                "start": 6765,
                                "end": 6769,
                                "loc": {
                                  "start": {
                                    "line": 180,
                                    "column": 63
                                  },
                                  "end": {
                                    "line": 180,
                                    "column": 67
                                  }
                                }
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            }
          ]
        },
        "leadingComments": [
          {
            "type": "CommentLine",
            "value": "================================ Sketch.Point =========================================",
            "start": 4027,
            "end": 4116,
            "loc": {
              "start": {
                "line": 91,
                "column": 0
              },
              "end": {
                "line": 91,
                "column": 89
              }
            },
            "range": [
              4027,
              4116
            ]
          }
        ],
        "trailingComments": []
      },
      "specifiers": [],
      "source": null,
      "leadingComments": [
        {
          "type": "CommentLine",
          "value": "================================ Sketch.Point =========================================",
          "start": 4027,
          "end": 4116,
          "loc": {
            "start": {
              "line": 91,
              "column": 0
            },
            "end": {
              "line": 91,
              "column": 89
            }
          },
          "range": [
            4027,
            4116
          ]
        }
      ]
    },
    {
      "type": "ExpressionStatement",
      "start": 6784,
      "end": 6832,
      "loc": {
        "start": {
          "line": 183,
          "column": 0
        },
        "end": {
          "line": 183,
          "column": 48
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 6784,
        "end": 6831,
        "loc": {
          "start": {
            "line": 183,
            "column": 0
          },
          "end": {
            "line": 183,
            "column": 47
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 6784,
          "end": 6823,
          "loc": {
            "start": {
              "line": 183,
              "column": 0
            },
            "end": {
              "line": 183,
              "column": 39
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 6784,
            "end": 6811,
            "loc": {
              "start": {
                "line": 183,
                "column": 0
              },
              "end": {
                "line": 183,
                "column": 27
              }
            },
            "object": {
              "type": "Identifier",
              "start": 6784,
              "end": 6798,
              "loc": {
                "start": {
                  "line": 183,
                  "column": 0
                },
                "end": {
                  "line": 183,
                  "column": 14
                }
              },
              "name": "ClassCadObject"
            },
            "property": {
              "type": "Identifier",
              "start": 6799,
              "end": 6811,
              "loc": {
                "start": {
                  "line": 183,
                  "column": 15
                },
                "end": {
                  "line": 183,
                  "column": 27
                }
              },
              "name": "classMapping"
            },
            "computed": false
          },
          "property": {
            "type": "Literal",
            "start": 6812,
            "end": 6822,
            "loc": {
              "start": {
                "line": 183,
                "column": 28
              },
              "end": {
                "line": 183,
                "column": 38
              }
            },
            "value": "CC_Point",
            "rawValue": "CC_Point",
            "raw": "'CC_Point'"
          },
          "computed": true
        },
        "right": {
          "type": "Identifier",
          "start": 6826,
          "end": 6831,
          "loc": {
            "start": {
              "line": 183,
              "column": 42
            },
            "end": {
              "line": 183,
              "column": 47
            }
          },
          "name": "Point"
        }
      },
      "trailingComments": [
        {
          "type": "CommentLine",
          "value": "================================ Sketch.Line =========================================",
          "start": 6836,
          "end": 6924,
          "loc": {
            "start": {
              "line": 185,
              "column": 0
            },
            "end": {
              "line": 185,
              "column": 88
            }
          },
          "range": [
            6836,
            6924
          ]
        }
      ]
    },
    {
      "type": "ExportNamedDeclaration",
      "start": 6926,
      "end": 14008,
      "loc": {
        "start": {
          "line": 186,
          "column": 0
        },
        "end": {
          "line": 366,
          "column": 1
        }
      },
      "declaration": {
        "type": "ClassDeclaration",
        "start": 6933,
        "end": 14008,
        "loc": {
          "start": {
            "line": 186,
            "column": 7
          },
          "end": {
            "line": 366,
            "column": 1
          }
        },
        "id": {
          "type": "Identifier",
          "start": 6939,
          "end": 6943,
          "loc": {
            "start": {
              "line": 186,
              "column": 13
            },
            "end": {
              "line": 186,
              "column": 17
            }
          },
          "name": "Line",
          "leadingComments": null
        },
        "superClass": {
          "type": "Identifier",
          "start": 6952,
          "end": 6967,
          "loc": {
            "start": {
              "line": 186,
              "column": 26
            },
            "end": {
              "line": 186,
              "column": 41
            }
          },
          "name": "GeometricObject"
        },
        "body": {
          "type": "ClassBody",
          "start": 6968,
          "end": 14008,
          "loc": {
            "start": {
              "line": 186,
              "column": 42
            },
            "end": {
              "line": 366,
              "column": 1
            }
          },
          "body": [
            {
              "type": "MethodDefinition",
              "start": 6975,
              "end": 7966,
              "loc": {
                "start": {
                  "line": 187,
                  "column": 4
                },
                "end": {
                  "line": 208,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 6975,
                "end": 6986,
                "loc": {
                  "start": {
                    "line": 187,
                    "column": 4
                  },
                  "end": {
                    "line": 187,
                    "column": 15
                  }
                },
                "name": "constructor"
              },
              "static": false,
              "kind": "constructor",
              "value": {
                "type": "FunctionExpression",
                "start": 6986,
                "end": 7966,
                "loc": {
                  "start": {
                    "line": 187,
                    "column": 15
                  },
                  "end": {
                    "line": 208,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 6989,
                  "end": 7966,
                  "loc": {
                    "start": {
                      "line": 187,
                      "column": 18
                    },
                    "end": {
                      "line": 208,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 7000,
                      "end": 7008,
                      "loc": {
                        "start": {
                          "line": 188,
                          "column": 8
                        },
                        "end": {
                          "line": 188,
                          "column": 16
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 7000,
                        "end": 7007,
                        "loc": {
                          "start": {
                            "line": 188,
                            "column": 8
                          },
                          "end": {
                            "line": 188,
                            "column": 15
                          }
                        },
                        "callee": {
                          "type": "Super",
                          "start": 7000,
                          "end": 7005,
                          "loc": {
                            "start": {
                              "line": 188,
                              "column": 8
                            },
                            "end": {
                              "line": 188,
                              "column": 13
                            }
                          }
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 7018,
                      "end": 7037,
                      "loc": {
                        "start": {
                          "line": 189,
                          "column": 8
                        },
                        "end": {
                          "line": 189,
                          "column": 27
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 7018,
                        "end": 7036,
                        "loc": {
                          "start": {
                            "line": 189,
                            "column": 8
                          },
                          "end": {
                            "line": 189,
                            "column": 26
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 7018,
                          "end": 7027,
                          "loc": {
                            "start": {
                              "line": 189,
                              "column": 8
                            },
                            "end": {
                              "line": 189,
                              "column": 17
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 7018,
                            "end": 7022,
                            "loc": {
                              "start": {
                                "line": 189,
                                "column": 8
                              },
                              "end": {
                                "line": 189,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7023,
                            "end": 7027,
                            "loc": {
                              "start": {
                                "line": 189,
                                "column": 13
                              },
                              "end": {
                                "line": 189,
                                "column": 17
                              }
                            },
                            "name": "type"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 7030,
                          "end": 7036,
                          "loc": {
                            "start": {
                              "line": 189,
                              "column": 20
                            },
                            "end": {
                              "line": 189,
                              "column": 26
                            }
                          },
                          "value": "Line",
                          "rawValue": "Line",
                          "raw": "'Line'"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 7049,
                      "end": 7321,
                      "loc": {
                        "start": {
                          "line": 191,
                          "column": 8
                        },
                        "end": {
                          "line": 195,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 7049,
                        "end": 7320,
                        "loc": {
                          "start": {
                            "line": 191,
                            "column": 8
                          },
                          "end": {
                            "line": 195,
                            "column": 10
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 7049,
                          "end": 7058,
                          "loc": {
                            "start": {
                              "line": 191,
                              "column": 8
                            },
                            "end": {
                              "line": 191,
                              "column": 17
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 7049,
                            "end": 7053,
                            "loc": {
                              "start": {
                                "line": 191,
                                "column": 8
                              },
                              "end": {
                                "line": 191,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7054,
                            "end": 7058,
                            "loc": {
                              "start": {
                                "line": 191,
                                "column": 13
                              },
                              "end": {
                                "line": 191,
                                "column": 17
                              }
                            },
                            "name": "mesh"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 7061,
                          "end": 7320,
                          "loc": {
                            "start": {
                              "line": 191,
                              "column": 20
                            },
                            "end": {
                              "line": 195,
                              "column": 10
                            }
                          },
                          "callee": {
                            "type": "Identifier",
                            "start": 7065,
                            "end": 7077,
                            "loc": {
                              "start": {
                                "line": 191,
                                "column": 24
                              },
                              "end": {
                                "line": 191,
                                "column": 36
                              }
                            },
                            "name": "InteractMesh"
                          },
                          "arguments": [
                            {
                              "type": "NewExpression",
                              "start": 7078,
                              "end": 7108,
                              "loc": {
                                "start": {
                                  "line": 191,
                                  "column": 37
                                },
                                "end": {
                                  "line": 191,
                                  "column": 67
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 7082,
                                "end": 7099,
                                "loc": {
                                  "start": {
                                    "line": 191,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 191,
                                    "column": 58
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 7082,
                                  "end": 7087,
                                  "loc": {
                                    "start": {
                                      "line": 191,
                                      "column": 41
                                    },
                                    "end": {
                                      "line": 191,
                                      "column": 46
                                    }
                                  },
                                  "name": "THREE"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 7088,
                                  "end": 7099,
                                  "loc": {
                                    "start": {
                                      "line": 191,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 191,
                                      "column": 58
                                    }
                                  },
                                  "name": "BoxGeometry"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 7100,
                                  "end": 7101,
                                  "loc": {
                                    "start": {
                                      "line": 191,
                                      "column": 59
                                    },
                                    "end": {
                                      "line": 191,
                                      "column": 60
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                },
                                {
                                  "type": "Literal",
                                  "start": 7103,
                                  "end": 7104,
                                  "loc": {
                                    "start": {
                                      "line": 191,
                                      "column": 62
                                    },
                                    "end": {
                                      "line": 191,
                                      "column": 63
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                },
                                {
                                  "type": "Literal",
                                  "start": 7106,
                                  "end": 7107,
                                  "loc": {
                                    "start": {
                                      "line": 191,
                                      "column": 65
                                    },
                                    "end": {
                                      "line": 191,
                                      "column": 66
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            },
                            {
                              "type": "NewExpression",
                              "start": 7110,
                              "end": 7319,
                              "loc": {
                                "start": {
                                  "line": 191,
                                  "column": 69
                                },
                                "end": {
                                  "line": 195,
                                  "column": 9
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 7114,
                                "end": 7137,
                                "loc": {
                                  "start": {
                                    "line": 191,
                                    "column": 73
                                  },
                                  "end": {
                                    "line": 191,
                                    "column": 96
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 7114,
                                  "end": 7119,
                                  "loc": {
                                    "start": {
                                      "line": 191,
                                      "column": 73
                                    },
                                    "end": {
                                      "line": 191,
                                      "column": 78
                                    }
                                  },
                                  "name": "THREE"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 7120,
                                  "end": 7137,
                                  "loc": {
                                    "start": {
                                      "line": 191,
                                      "column": 79
                                    },
                                    "end": {
                                      "line": 191,
                                      "column": 96
                                    }
                                  },
                                  "name": "MeshBasicMaterial"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ObjectExpression",
                                  "start": 7152,
                                  "end": 7308,
                                  "loc": {
                                    "start": {
                                      "line": 192,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 194,
                                      "column": 13
                                    }
                                  },
                                  "properties": [
                                    {
                                      "type": "Property",
                                      "start": 7153,
                                      "end": 7181,
                                      "loc": {
                                        "start": {
                                          "line": 192,
                                          "column": 13
                                        },
                                        "end": {
                                          "line": 192,
                                          "column": 41
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 7153,
                                        "end": 7158,
                                        "loc": {
                                          "start": {
                                            "line": 192,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 192,
                                            "column": 18
                                          }
                                        },
                                        "name": "color"
                                      },
                                      "value": {
                                        "type": "CallExpression",
                                        "start": 7160,
                                        "end": 7181,
                                        "loc": {
                                          "start": {
                                            "line": 192,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 192,
                                            "column": 41
                                          }
                                        },
                                        "callee": {
                                          "type": "Identifier",
                                          "start": 7160,
                                          "end": 7168,
                                          "loc": {
                                            "start": {
                                              "line": 192,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 192,
                                              "column": 28
                                            }
                                          },
                                          "name": "getColor"
                                        },
                                        "arguments": [
                                          {
                                            "type": "ThisExpression",
                                            "start": 7169,
                                            "end": 7173,
                                            "loc": {
                                              "start": {
                                                "line": 192,
                                                "column": 29
                                              },
                                              "end": {
                                                "line": 192,
                                                "column": 33
                                              }
                                            }
                                          },
                                          {
                                            "type": "Literal",
                                            "start": 7175,
                                            "end": 7180,
                                            "loc": {
                                              "start": {
                                                "line": 192,
                                                "column": 35
                                              },
                                              "end": {
                                                "line": 192,
                                                "column": 40
                                              }
                                            },
                                            "value": false,
                                            "rawValue": false,
                                            "raw": "false"
                                          }
                                        ]
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 7183,
                                      "end": 7205,
                                      "loc": {
                                        "start": {
                                          "line": 192,
                                          "column": 43
                                        },
                                        "end": {
                                          "line": 192,
                                          "column": 65
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 7183,
                                        "end": 7187,
                                        "loc": {
                                          "start": {
                                            "line": 192,
                                            "column": 43
                                          },
                                          "end": {
                                            "line": 192,
                                            "column": 47
                                          }
                                        },
                                        "name": "side"
                                      },
                                      "value": {
                                        "type": "MemberExpression",
                                        "start": 7189,
                                        "end": 7205,
                                        "loc": {
                                          "start": {
                                            "line": 192,
                                            "column": 49
                                          },
                                          "end": {
                                            "line": 192,
                                            "column": 65
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 7189,
                                          "end": 7194,
                                          "loc": {
                                            "start": {
                                              "line": 192,
                                              "column": 49
                                            },
                                            "end": {
                                              "line": 192,
                                              "column": 54
                                            }
                                          },
                                          "name": "THREE"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 7195,
                                          "end": 7205,
                                          "loc": {
                                            "start": {
                                              "line": 192,
                                              "column": 55
                                            },
                                            "end": {
                                              "line": 192,
                                              "column": 65
                                            }
                                          },
                                          "name": "DoubleSide"
                                        },
                                        "computed": false
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 7224,
                                      "end": 7243,
                                      "loc": {
                                        "start": {
                                          "line": 193,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 193,
                                          "column": 35
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 7224,
                                        "end": 7237,
                                        "loc": {
                                          "start": {
                                            "line": 193,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 193,
                                            "column": 29
                                          }
                                        },
                                        "name": "polygonOffset"
                                      },
                                      "value": {
                                        "type": "Literal",
                                        "start": 7239,
                                        "end": 7243,
                                        "loc": {
                                          "start": {
                                            "line": 193,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 193,
                                            "column": 35
                                          }
                                        },
                                        "value": true,
                                        "rawValue": true,
                                        "raw": "true"
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 7245,
                                      "end": 7268,
                                      "loc": {
                                        "start": {
                                          "line": 193,
                                          "column": 37
                                        },
                                        "end": {
                                          "line": 193,
                                          "column": 60
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 7245,
                                        "end": 7264,
                                        "loc": {
                                          "start": {
                                            "line": 193,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 193,
                                            "column": 56
                                          }
                                        },
                                        "name": "polygonOffsetFactor"
                                      },
                                      "value": {
                                        "type": "UnaryExpression",
                                        "start": 7266,
                                        "end": 7268,
                                        "loc": {
                                          "start": {
                                            "line": 193,
                                            "column": 58
                                          },
                                          "end": {
                                            "line": 193,
                                            "column": 60
                                          }
                                        },
                                        "operator": "-",
                                        "prefix": true,
                                        "argument": {
                                          "type": "Literal",
                                          "start": 7267,
                                          "end": 7268,
                                          "loc": {
                                            "start": {
                                              "line": 193,
                                              "column": 59
                                            },
                                            "end": {
                                              "line": 193,
                                              "column": 60
                                            }
                                          },
                                          "value": 1,
                                          "rawValue": 1,
                                          "raw": "1"
                                        }
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 7270,
                                      "end": 7293,
                                      "loc": {
                                        "start": {
                                          "line": 193,
                                          "column": 62
                                        },
                                        "end": {
                                          "line": 193,
                                          "column": 85
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 7270,
                                        "end": 7288,
                                        "loc": {
                                          "start": {
                                            "line": 193,
                                            "column": 62
                                          },
                                          "end": {
                                            "line": 193,
                                            "column": 80
                                          }
                                        },
                                        "name": "polygonOffsetUnits"
                                      },
                                      "value": {
                                        "type": "UnaryExpression",
                                        "start": 7291,
                                        "end": 7293,
                                        "loc": {
                                          "start": {
                                            "line": 193,
                                            "column": 83
                                          },
                                          "end": {
                                            "line": 193,
                                            "column": 85
                                          }
                                        },
                                        "operator": "-",
                                        "prefix": true,
                                        "argument": {
                                          "type": "Literal",
                                          "start": 7292,
                                          "end": 7293,
                                          "loc": {
                                            "start": {
                                              "line": 193,
                                              "column": 84
                                            },
                                            "end": {
                                              "line": 193,
                                              "column": 85
                                            }
                                          },
                                          "value": 5,
                                          "rawValue": 5,
                                          "raw": "5"
                                        }
                                      },
                                      "kind": "init"
                                    }
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 7331,
                      "end": 7357,
                      "loc": {
                        "start": {
                          "line": 196,
                          "column": 8
                        },
                        "end": {
                          "line": 196,
                          "column": 34
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 7331,
                        "end": 7356,
                        "loc": {
                          "start": {
                            "line": 196,
                            "column": 8
                          },
                          "end": {
                            "line": 196,
                            "column": 33
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 7331,
                          "end": 7344,
                          "loc": {
                            "start": {
                              "line": 196,
                              "column": 8
                            },
                            "end": {
                              "line": 196,
                              "column": 21
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 7331,
                            "end": 7335,
                            "loc": {
                              "start": {
                                "line": 196,
                                "column": 8
                              },
                              "end": {
                                "line": 196,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7336,
                            "end": 7344,
                            "loc": {
                              "start": {
                                "line": 196,
                                "column": 13
                              },
                              "end": {
                                "line": 196,
                                "column": 21
                              }
                            },
                            "name": "interact"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 7347,
                          "end": 7356,
                          "loc": {
                            "start": {
                              "line": 196,
                              "column": 24
                            },
                            "end": {
                              "line": 196,
                              "column": 33
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 7347,
                            "end": 7351,
                            "loc": {
                              "start": {
                                "line": 196,
                                "column": 24
                              },
                              "end": {
                                "line": 196,
                                "column": 28
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7352,
                            "end": 7356,
                            "loc": {
                              "start": {
                                "line": 196,
                                "column": 29
                              },
                              "end": {
                                "line": 196,
                                "column": 33
                              }
                            },
                            "name": "mesh"
                          },
                          "computed": false
                        }
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "pseudonym, place your interactions here",
                          "start": 7358,
                          "end": 7399,
                          "loc": {
                            "start": {
                              "line": 196,
                              "column": 35
                            },
                            "end": {
                              "line": 196,
                              "column": 76
                            }
                          },
                          "range": [
                            7358,
                            7399
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 7409,
                      "end": 7450,
                      "loc": {
                        "start": {
                          "line": 197,
                          "column": 8
                        },
                        "end": {
                          "line": 197,
                          "column": 49
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 7409,
                        "end": 7449,
                        "loc": {
                          "start": {
                            "line": 197,
                            "column": 8
                          },
                          "end": {
                            "line": 197,
                            "column": 48
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 7409,
                          "end": 7420,
                          "loc": {
                            "start": {
                              "line": 197,
                              "column": 8
                            },
                            "end": {
                              "line": 197,
                              "column": 19
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 7409,
                            "end": 7413,
                            "loc": {
                              "start": {
                                "line": 197,
                                "column": 8
                              },
                              "end": {
                                "line": 197,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7414,
                            "end": 7420,
                            "loc": {
                              "start": {
                                "line": 197,
                                "column": 13
                              },
                              "end": {
                                "line": 197,
                                "column": 19
                              }
                            },
                            "name": "points"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "ArrayExpression",
                          "start": 7423,
                          "end": 7449,
                          "loc": {
                            "start": {
                              "line": 197,
                              "column": 22
                            },
                            "end": {
                              "line": 197,
                              "column": 48
                            }
                          },
                          "elements": [
                            {
                              "type": "NewExpression",
                              "start": 7424,
                              "end": 7435,
                              "loc": {
                                "start": {
                                  "line": 197,
                                  "column": 23
                                },
                                "end": {
                                  "line": 197,
                                  "column": 34
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 7428,
                                "end": 7433,
                                "loc": {
                                  "start": {
                                    "line": 197,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 197,
                                    "column": 32
                                  }
                                },
                                "name": "Point"
                              },
                              "arguments": []
                            },
                            {
                              "type": "NewExpression",
                              "start": 7437,
                              "end": 7448,
                              "loc": {
                                "start": {
                                  "line": 197,
                                  "column": 36
                                },
                                "end": {
                                  "line": 197,
                                  "column": 47
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 7441,
                                "end": 7446,
                                "loc": {
                                  "start": {
                                    "line": 197,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 197,
                                    "column": 45
                                  }
                                },
                                "name": "Point"
                              },
                              "arguments": []
                            }
                          ]
                        },
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "pseudonym, place your interactions here",
                          "start": 7358,
                          "end": 7399,
                          "loc": {
                            "start": {
                              "line": 196,
                              "column": 35
                            },
                            "end": {
                              "line": 196,
                              "column": 76
                            }
                          },
                          "range": [
                            7358,
                            7399
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 7460,
                      "end": 7495,
                      "loc": {
                        "start": {
                          "line": 198,
                          "column": 8
                        },
                        "end": {
                          "line": 198,
                          "column": 43
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 7460,
                        "end": 7494,
                        "loc": {
                          "start": {
                            "line": 198,
                            "column": 8
                          },
                          "end": {
                            "line": 198,
                            "column": 42
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 7460,
                          "end": 7479,
                          "loc": {
                            "start": {
                              "line": 198,
                              "column": 8
                            },
                            "end": {
                              "line": 198,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 7460,
                            "end": 7474,
                            "loc": {
                              "start": {
                                "line": 198,
                                "column": 8
                              },
                              "end": {
                                "line": 198,
                                "column": 22
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 7460,
                              "end": 7471,
                              "loc": {
                                "start": {
                                  "line": 198,
                                  "column": 8
                                },
                                "end": {
                                  "line": 198,
                                  "column": 19
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 7460,
                                "end": 7464,
                                "loc": {
                                  "start": {
                                    "line": 198,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 198,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 7465,
                                "end": 7471,
                                "loc": {
                                  "start": {
                                    "line": 198,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 198,
                                    "column": 19
                                  }
                                },
                                "name": "points"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Literal",
                              "start": 7472,
                              "end": 7473,
                              "loc": {
                                "start": {
                                  "line": 198,
                                  "column": 20
                                },
                                "end": {
                                  "line": 198,
                                  "column": 21
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            },
                            "computed": true
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7475,
                            "end": 7479,
                            "loc": {
                              "start": {
                                "line": 198,
                                "column": 23
                              },
                              "end": {
                                "line": 198,
                                "column": 27
                              }
                            },
                            "name": "name"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 7482,
                          "end": 7494,
                          "loc": {
                            "start": {
                              "line": 198,
                              "column": 30
                            },
                            "end": {
                              "line": 198,
                              "column": 42
                            }
                          },
                          "value": "startPoint",
                          "rawValue": "startPoint",
                          "raw": "'startPoint'"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 7505,
                      "end": 7538,
                      "loc": {
                        "start": {
                          "line": 199,
                          "column": 8
                        },
                        "end": {
                          "line": 199,
                          "column": 41
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 7505,
                        "end": 7537,
                        "loc": {
                          "start": {
                            "line": 199,
                            "column": 8
                          },
                          "end": {
                            "line": 199,
                            "column": 40
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 7505,
                          "end": 7524,
                          "loc": {
                            "start": {
                              "line": 199,
                              "column": 8
                            },
                            "end": {
                              "line": 199,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 7505,
                            "end": 7519,
                            "loc": {
                              "start": {
                                "line": 199,
                                "column": 8
                              },
                              "end": {
                                "line": 199,
                                "column": 22
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 7505,
                              "end": 7516,
                              "loc": {
                                "start": {
                                  "line": 199,
                                  "column": 8
                                },
                                "end": {
                                  "line": 199,
                                  "column": 19
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 7505,
                                "end": 7509,
                                "loc": {
                                  "start": {
                                    "line": 199,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 199,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 7510,
                                "end": 7516,
                                "loc": {
                                  "start": {
                                    "line": 199,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 199,
                                    "column": 19
                                  }
                                },
                                "name": "points"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Literal",
                              "start": 7517,
                              "end": 7518,
                              "loc": {
                                "start": {
                                  "line": 199,
                                  "column": 20
                                },
                                "end": {
                                  "line": 199,
                                  "column": 21
                                }
                              },
                              "value": 1,
                              "rawValue": 1,
                              "raw": "1"
                            },
                            "computed": true
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7520,
                            "end": 7524,
                            "loc": {
                              "start": {
                                "line": 199,
                                "column": 23
                              },
                              "end": {
                                "line": 199,
                                "column": 27
                              }
                            },
                            "name": "name"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 7527,
                          "end": 7537,
                          "loc": {
                            "start": {
                              "line": 199,
                              "column": 30
                            },
                            "end": {
                              "line": 199,
                              "column": 40
                            }
                          },
                          "value": "endPoint",
                          "rawValue": "endPoint",
                          "raw": "'endPoint'"
                        }
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " when positions in geometry are directly updated, notify geometry about it",
                          "start": 7548,
                          "end": 7624,
                          "loc": {
                            "start": {
                              "line": 200,
                              "column": 8
                            },
                            "end": {
                              "line": 200,
                              "column": 84
                            }
                          },
                          "range": [
                            7548,
                            7624
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 7634,
                      "end": 7800,
                      "loc": {
                        "start": {
                          "line": 201,
                          "column": 8
                        },
                        "end": {
                          "line": 204,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 7634,
                        "end": 7799,
                        "loc": {
                          "start": {
                            "line": 201,
                            "column": 8
                          },
                          "end": {
                            "line": 204,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 7634,
                          "end": 7653,
                          "loc": {
                            "start": {
                              "line": 201,
                              "column": 8
                            },
                            "end": {
                              "line": 201,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 7634,
                            "end": 7645,
                            "loc": {
                              "start": {
                                "line": 201,
                                "column": 8
                              },
                              "end": {
                                "line": 201,
                                "column": 19
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 7634,
                              "end": 7638,
                              "loc": {
                                "start": {
                                  "line": 201,
                                  "column": 8
                                },
                                "end": {
                                  "line": 201,
                                  "column": 12
                                }
                              },
                              "leadingComments": null
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7639,
                              "end": 7645,
                              "loc": {
                                "start": {
                                  "line": 201,
                                  "column": 13
                                },
                                "end": {
                                  "line": 201,
                                  "column": 19
                                }
                              },
                              "name": "points"
                            },
                            "computed": false,
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7646,
                            "end": 7653,
                            "loc": {
                              "start": {
                                "line": 201,
                                "column": 20
                              },
                              "end": {
                                "line": 201,
                                "column": 27
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 7654,
                            "end": 7798,
                            "loc": {
                              "start": {
                                "line": 201,
                                "column": 28
                              },
                              "end": {
                                "line": 204,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 7654,
                                "end": 7659,
                                "loc": {
                                  "start": {
                                    "line": 201,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 201,
                                    "column": 33
                                  }
                                },
                                "name": "point"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 7663,
                              "end": 7798,
                              "loc": {
                                "start": {
                                  "line": 201,
                                  "column": 37
                                },
                                "end": {
                                  "line": 204,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 7678,
                                  "end": 7728,
                                  "loc": {
                                    "start": {
                                      "line": 202,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 202,
                                      "column": 62
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 7678,
                                    "end": 7727,
                                    "loc": {
                                      "start": {
                                        "line": 202,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 202,
                                        "column": 61
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 7678,
                                      "end": 7686,
                                      "loc": {
                                        "start": {
                                          "line": 202,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 202,
                                          "column": 20
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 7678,
                                        "end": 7683,
                                        "loc": {
                                          "start": {
                                            "line": 202,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 202,
                                            "column": 17
                                          }
                                        },
                                        "name": "point"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 7684,
                                        "end": 7686,
                                        "loc": {
                                          "start": {
                                            "line": 202,
                                            "column": 18
                                          },
                                          "end": {
                                            "line": 202,
                                            "column": 20
                                          }
                                        },
                                        "name": "on"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Literal",
                                        "start": 7687,
                                        "end": 7694,
                                        "loc": {
                                          "start": {
                                            "line": 202,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 202,
                                            "column": 28
                                          }
                                        },
                                        "value": "moved",
                                        "rawValue": "moved",
                                        "raw": "'moved'"
                                      },
                                      {
                                        "type": "CallExpression",
                                        "start": 7696,
                                        "end": 7726,
                                        "loc": {
                                          "start": {
                                            "line": 202,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 202,
                                            "column": 60
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 7696,
                                          "end": 7720,
                                          "loc": {
                                            "start": {
                                              "line": 202,
                                              "column": 30
                                            },
                                            "end": {
                                              "line": 202,
                                              "column": 54
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 7696,
                                            "end": 7715,
                                            "loc": {
                                              "start": {
                                                "line": 202,
                                                "column": 30
                                              },
                                              "end": {
                                                "line": 202,
                                                "column": 49
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 7696,
                                              "end": 7700,
                                              "loc": {
                                                "start": {
                                                  "line": 202,
                                                  "column": 30
                                                },
                                                "end": {
                                                  "line": 202,
                                                  "column": 34
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 7701,
                                              "end": 7715,
                                              "loc": {
                                                "start": {
                                                  "line": 202,
                                                  "column": 35
                                                },
                                                "end": {
                                                  "line": 202,
                                                  "column": 49
                                                }
                                              },
                                              "name": "updateGeometry"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 7716,
                                            "end": 7720,
                                            "loc": {
                                              "start": {
                                                "line": 202,
                                                "column": 50
                                              },
                                              "end": {
                                                "line": 202,
                                                "column": 54
                                              }
                                            },
                                            "name": "bind"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "ThisExpression",
                                            "start": 7721,
                                            "end": 7725,
                                            "loc": {
                                              "start": {
                                                "line": 202,
                                                "column": 55
                                              },
                                              "end": {
                                                "line": 202,
                                                "column": 59
                                              }
                                            }
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 7742,
                                  "end": 7787,
                                  "loc": {
                                    "start": {
                                      "line": 203,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 203,
                                      "column": 57
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 7742,
                                    "end": 7786,
                                    "loc": {
                                      "start": {
                                        "line": 203,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 203,
                                        "column": 56
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 7742,
                                      "end": 7750,
                                      "loc": {
                                        "start": {
                                          "line": 203,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 203,
                                          "column": 20
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 7742,
                                        "end": 7747,
                                        "loc": {
                                          "start": {
                                            "line": 203,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 203,
                                            "column": 17
                                          }
                                        },
                                        "name": "point"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 7748,
                                        "end": 7750,
                                        "loc": {
                                          "start": {
                                            "line": 203,
                                            "column": 18
                                          },
                                          "end": {
                                            "line": 203,
                                            "column": 20
                                          }
                                        },
                                        "name": "on"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Literal",
                                        "start": 7751,
                                        "end": 7760,
                                        "loc": {
                                          "start": {
                                            "line": 203,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 203,
                                            "column": 30
                                          }
                                        },
                                        "value": "dragend",
                                        "rawValue": "dragend",
                                        "raw": "'dragend'"
                                      },
                                      {
                                        "type": "CallExpression",
                                        "start": 7762,
                                        "end": 7785,
                                        "loc": {
                                          "start": {
                                            "line": 203,
                                            "column": 32
                                          },
                                          "end": {
                                            "line": 203,
                                            "column": 55
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 7762,
                                          "end": 7779,
                                          "loc": {
                                            "start": {
                                              "line": 203,
                                              "column": 32
                                            },
                                            "end": {
                                              "line": 203,
                                              "column": 49
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 7762,
                                            "end": 7774,
                                            "loc": {
                                              "start": {
                                                "line": 203,
                                                "column": 32
                                              },
                                              "end": {
                                                "line": 203,
                                                "column": 44
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 7762,
                                              "end": 7766,
                                              "loc": {
                                                "start": {
                                                  "line": 203,
                                                  "column": 32
                                                },
                                                "end": {
                                                  "line": 203,
                                                  "column": 36
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 7767,
                                              "end": 7774,
                                              "loc": {
                                                "start": {
                                                  "line": 203,
                                                  "column": 37
                                                },
                                                "end": {
                                                  "line": 203,
                                                  "column": 44
                                                }
                                              },
                                              "name": "endDrag"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 7775,
                                            "end": 7779,
                                            "loc": {
                                              "start": {
                                                "line": 203,
                                                "column": 45
                                              },
                                              "end": {
                                                "line": 203,
                                                "column": 49
                                              }
                                            },
                                            "name": "bind"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "ThisExpression",
                                            "start": 7780,
                                            "end": 7784,
                                            "loc": {
                                              "start": {
                                                "line": 203,
                                                "column": 50
                                              },
                                              "end": {
                                                "line": 203,
                                                "column": 54
                                              }
                                            }
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                }
                              ]
                            }
                          }
                        ],
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " when positions in geometry are directly updated, notify geometry about it",
                          "start": 7548,
                          "end": 7624,
                          "loc": {
                            "start": {
                              "line": 200,
                              "column": 8
                            },
                            "end": {
                              "line": 200,
                              "column": 84
                            }
                          },
                          "range": [
                            7548,
                            7624
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 7810,
                      "end": 7838,
                      "loc": {
                        "start": {
                          "line": 205,
                          "column": 8
                        },
                        "end": {
                          "line": 205,
                          "column": 36
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 7810,
                        "end": 7837,
                        "loc": {
                          "start": {
                            "line": 205,
                            "column": 8
                          },
                          "end": {
                            "line": 205,
                            "column": 35
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 7810,
                          "end": 7820,
                          "loc": {
                            "start": {
                              "line": 205,
                              "column": 8
                            },
                            "end": {
                              "line": 205,
                              "column": 18
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 7810,
                            "end": 7814,
                            "loc": {
                              "start": {
                                "line": 205,
                                "column": 8
                              },
                              "end": {
                                "line": 205,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7815,
                            "end": 7820,
                            "loc": {
                              "start": {
                                "line": 205,
                                "column": 13
                              },
                              "end": {
                                "line": 205,
                                "column": 18
                              }
                            },
                            "name": "width"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 7823,
                          "end": 7837,
                          "loc": {
                            "start": {
                              "line": 205,
                              "column": 21
                            },
                            "end": {
                              "line": 205,
                              "column": 35
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 7823,
                            "end": 7827,
                            "loc": {
                              "start": {
                                "line": 205,
                                "column": 21
                              },
                              "end": {
                                "line": 205,
                                "column": 25
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7828,
                            "end": 7837,
                            "loc": {
                              "start": {
                                "line": 205,
                                "column": 26
                              },
                              "end": {
                                "line": 205,
                                "column": 35
                              }
                            },
                            "name": "thickness"
                          },
                          "computed": false
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 7848,
                      "end": 7927,
                      "loc": {
                        "start": {
                          "line": 206,
                          "column": 8
                        },
                        "end": {
                          "line": 206,
                          "column": 87
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 7848,
                        "end": 7926,
                        "loc": {
                          "start": {
                            "line": 206,
                            "column": 8
                          },
                          "end": {
                            "line": 206,
                            "column": 86
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 7848,
                          "end": 7856,
                          "loc": {
                            "start": {
                              "line": 206,
                              "column": 8
                            },
                            "end": {
                              "line": 206,
                              "column": 16
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 7848,
                            "end": 7852,
                            "loc": {
                              "start": {
                                "line": 206,
                                "column": 8
                              },
                              "end": {
                                "line": 206,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7853,
                            "end": 7856,
                            "loc": {
                              "start": {
                                "line": 206,
                                "column": 13
                              },
                              "end": {
                                "line": 206,
                                "column": 16
                              }
                            },
                            "name": "add"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 7857,
                            "end": 7871,
                            "loc": {
                              "start": {
                                "line": 206,
                                "column": 17
                              },
                              "end": {
                                "line": 206,
                                "column": 31
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 7857,
                              "end": 7868,
                              "loc": {
                                "start": {
                                  "line": 206,
                                  "column": 17
                                },
                                "end": {
                                  "line": 206,
                                  "column": 28
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 7857,
                                "end": 7861,
                                "loc": {
                                  "start": {
                                    "line": 206,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 206,
                                    "column": 21
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 7862,
                                "end": 7868,
                                "loc": {
                                  "start": {
                                    "line": 206,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 206,
                                    "column": 28
                                  }
                                },
                                "name": "points"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Literal",
                              "start": 7869,
                              "end": 7870,
                              "loc": {
                                "start": {
                                  "line": 206,
                                  "column": 29
                                },
                                "end": {
                                  "line": 206,
                                  "column": 30
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            },
                            "computed": true
                          },
                          {
                            "type": "MemberExpression",
                            "start": 7873,
                            "end": 7887,
                            "loc": {
                              "start": {
                                "line": 206,
                                "column": 33
                              },
                              "end": {
                                "line": 206,
                                "column": 47
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 7873,
                              "end": 7884,
                              "loc": {
                                "start": {
                                  "line": 206,
                                  "column": 33
                                },
                                "end": {
                                  "line": 206,
                                  "column": 44
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 7873,
                                "end": 7877,
                                "loc": {
                                  "start": {
                                    "line": 206,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 206,
                                    "column": 37
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 7878,
                                "end": 7884,
                                "loc": {
                                  "start": {
                                    "line": 206,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 206,
                                    "column": 44
                                  }
                                },
                                "name": "points"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Literal",
                              "start": 7885,
                              "end": 7886,
                              "loc": {
                                "start": {
                                  "line": 206,
                                  "column": 45
                                },
                                "end": {
                                  "line": 206,
                                  "column": 46
                                }
                              },
                              "value": 1,
                              "rawValue": 1,
                              "raw": "1"
                            },
                            "computed": true
                          },
                          {
                            "type": "MemberExpression",
                            "start": 7889,
                            "end": 7898,
                            "loc": {
                              "start": {
                                "line": 206,
                                "column": 49
                              },
                              "end": {
                                "line": 206,
                                "column": 58
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 7889,
                              "end": 7893,
                              "loc": {
                                "start": {
                                  "line": 206,
                                  "column": 49
                                },
                                "end": {
                                  "line": 206,
                                  "column": 53
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7894,
                              "end": 7898,
                              "loc": {
                                "start": {
                                  "line": 206,
                                  "column": 54
                                },
                                "end": {
                                  "line": 206,
                                  "column": 58
                                }
                              },
                              "name": "mesh"
                            },
                            "computed": false
                          },
                          {
                            "type": "MemberExpression",
                            "start": 7900,
                            "end": 7925,
                            "loc": {
                              "start": {
                                "line": 206,
                                "column": 60
                              },
                              "end": {
                                "line": 206,
                                "column": 85
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 7900,
                              "end": 7904,
                              "loc": {
                                "start": {
                                  "line": 206,
                                  "column": 60
                                },
                                "end": {
                                  "line": 206,
                                  "column": 64
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7905,
                              "end": 7925,
                              "loc": {
                                "start": {
                                  "line": 206,
                                  "column": 65
                                },
                                "end": {
                                  "line": 206,
                                  "column": 85
                                }
                              },
                              "name": "constraintsSubstrate"
                            },
                            "computed": false
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 7937,
                      "end": 7959,
                      "loc": {
                        "start": {
                          "line": 207,
                          "column": 8
                        },
                        "end": {
                          "line": 207,
                          "column": 30
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 7937,
                        "end": 7958,
                        "loc": {
                          "start": {
                            "line": 207,
                            "column": 8
                          },
                          "end": {
                            "line": 207,
                            "column": 29
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 7937,
                          "end": 7956,
                          "loc": {
                            "start": {
                              "line": 207,
                              "column": 8
                            },
                            "end": {
                              "line": 207,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 7937,
                            "end": 7941,
                            "loc": {
                              "start": {
                                "line": 207,
                                "column": 8
                              },
                              "end": {
                                "line": 207,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7942,
                            "end": 7956,
                            "loc": {
                              "start": {
                                "line": 207,
                                "column": 13
                              },
                              "end": {
                                "line": 207,
                                "column": 27
                              }
                            },
                            "name": "updateGeometry"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 7974,
              "end": 8142,
              "loc": {
                "start": {
                  "line": 210,
                  "column": 4
                },
                "end": {
                  "line": 213,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 7974,
                "end": 7991,
                "loc": {
                  "start": {
                    "line": 210,
                    "column": 4
                  },
                  "end": {
                    "line": 210,
                    "column": 21
                  }
                },
                "name": "getMiddlePosition"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 7991,
                "end": 8142,
                "loc": {
                  "start": {
                    "line": 210,
                    "column": 21
                  },
                  "end": {
                    "line": 213,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 7994,
                  "end": 8142,
                  "loc": {
                    "start": {
                      "line": 210,
                      "column": 24
                    },
                    "end": {
                      "line": 213,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 8047,
                      "end": 8135,
                      "loc": {
                        "start": {
                          "line": 212,
                          "column": 8
                        },
                        "end": {
                          "line": 212,
                          "column": 96
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 8054,
                        "end": 8134,
                        "loc": {
                          "start": {
                            "line": 212,
                            "column": 15
                          },
                          "end": {
                            "line": 212,
                            "column": 95
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 8054,
                          "end": 8129,
                          "loc": {
                            "start": {
                              "line": 212,
                              "column": 15
                            },
                            "end": {
                              "line": 212,
                              "column": 90
                            }
                          },
                          "object": {
                            "type": "CallExpression",
                            "start": 8054,
                            "end": 8114,
                            "loc": {
                              "start": {
                                "line": 212,
                                "column": 15
                              },
                              "end": {
                                "line": 212,
                                "column": 75
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 8054,
                              "end": 8089,
                              "loc": {
                                "start": {
                                  "line": 212,
                                  "column": 15
                                },
                                "end": {
                                  "line": 212,
                                  "column": 50
                                }
                              },
                              "object": {
                                "type": "CallExpression",
                                "start": 8054,
                                "end": 8085,
                                "loc": {
                                  "start": {
                                    "line": 212,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 212,
                                    "column": 46
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 8054,
                                  "end": 8083,
                                  "loc": {
                                    "start": {
                                      "line": 212,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 212,
                                      "column": 44
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 8054,
                                    "end": 8077,
                                    "loc": {
                                      "start": {
                                        "line": 212,
                                        "column": 15
                                      },
                                      "end": {
                                        "line": 212,
                                        "column": 38
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 8054,
                                      "end": 8068,
                                      "loc": {
                                        "start": {
                                          "line": 212,
                                          "column": 15
                                        },
                                        "end": {
                                          "line": 212,
                                          "column": 29
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 8054,
                                        "end": 8065,
                                        "loc": {
                                          "start": {
                                            "line": 212,
                                            "column": 15
                                          },
                                          "end": {
                                            "line": 212,
                                            "column": 26
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 8054,
                                          "end": 8058,
                                          "loc": {
                                            "start": {
                                              "line": 212,
                                              "column": 15
                                            },
                                            "end": {
                                              "line": 212,
                                              "column": 19
                                            }
                                          },
                                          "leadingComments": null
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 8059,
                                          "end": 8065,
                                          "loc": {
                                            "start": {
                                              "line": 212,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 212,
                                              "column": 26
                                            }
                                          },
                                          "name": "points"
                                        },
                                        "computed": false,
                                        "leadingComments": null
                                      },
                                      "property": {
                                        "type": "Literal",
                                        "start": 8066,
                                        "end": 8067,
                                        "loc": {
                                          "start": {
                                            "line": 212,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 212,
                                            "column": 28
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      "computed": true,
                                      "leadingComments": null
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 8069,
                                      "end": 8077,
                                      "loc": {
                                        "start": {
                                          "line": 212,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 212,
                                          "column": 38
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false,
                                    "leadingComments": null
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 8078,
                                    "end": 8083,
                                    "loc": {
                                      "start": {
                                        "line": 212,
                                        "column": 39
                                      },
                                      "end": {
                                        "line": 212,
                                        "column": 44
                                      }
                                    },
                                    "name": "clone"
                                  },
                                  "computed": false,
                                  "leadingComments": null
                                },
                                "arguments": [],
                                "leadingComments": null
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 8086,
                                "end": 8089,
                                "loc": {
                                  "start": {
                                    "line": 212,
                                    "column": 47
                                  },
                                  "end": {
                                    "line": 212,
                                    "column": 50
                                  }
                                },
                                "name": "add"
                              },
                              "computed": false,
                              "leadingComments": null
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 8090,
                                "end": 8113,
                                "loc": {
                                  "start": {
                                    "line": 212,
                                    "column": 51
                                  },
                                  "end": {
                                    "line": 212,
                                    "column": 74
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 8090,
                                  "end": 8104,
                                  "loc": {
                                    "start": {
                                      "line": 212,
                                      "column": 51
                                    },
                                    "end": {
                                      "line": 212,
                                      "column": 65
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 8090,
                                    "end": 8101,
                                    "loc": {
                                      "start": {
                                        "line": 212,
                                        "column": 51
                                      },
                                      "end": {
                                        "line": 212,
                                        "column": 62
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 8090,
                                      "end": 8094,
                                      "loc": {
                                        "start": {
                                          "line": 212,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 212,
                                          "column": 55
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 8095,
                                      "end": 8101,
                                      "loc": {
                                        "start": {
                                          "line": 212,
                                          "column": 56
                                        },
                                        "end": {
                                          "line": 212,
                                          "column": 62
                                        }
                                      },
                                      "name": "points"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Literal",
                                    "start": 8102,
                                    "end": 8103,
                                    "loc": {
                                      "start": {
                                        "line": 212,
                                        "column": 63
                                      },
                                      "end": {
                                        "line": 212,
                                        "column": 64
                                      }
                                    },
                                    "value": 1,
                                    "rawValue": 1,
                                    "raw": "1"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 8105,
                                  "end": 8113,
                                  "loc": {
                                    "start": {
                                      "line": 212,
                                      "column": 66
                                    },
                                    "end": {
                                      "line": 212,
                                      "column": 74
                                    }
                                  },
                                  "name": "position"
                                },
                                "computed": false
                              }
                            ],
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 8115,
                            "end": 8129,
                            "loc": {
                              "start": {
                                "line": 212,
                                "column": 76
                              },
                              "end": {
                                "line": 212,
                                "column": 90
                              }
                            },
                            "name": "multiplyScalar"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 8130,
                            "end": 8133,
                            "loc": {
                              "start": {
                                "line": 212,
                                "column": 91
                              },
                              "end": {
                                "line": 212,
                                "column": 94
                              }
                            },
                            "value": 0.5,
                            "rawValue": 0.5,
                            "raw": "0.5"
                          }
                        ],
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "returns middle of line segment",
                          "start": 8005,
                          "end": 8037,
                          "loc": {
                            "start": {
                              "line": 211,
                              "column": 8
                            },
                            "end": {
                              "line": 211,
                              "column": 40
                            }
                          },
                          "range": [
                            8005,
                            8037
                          ]
                        }
                      ]
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 8150,
              "end": 8392,
              "loc": {
                "start": {
                  "line": 215,
                  "column": 4
                },
                "end": {
                  "line": 219,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 8150,
                "end": 8160,
                "loc": {
                  "start": {
                    "line": 215,
                    "column": 4
                  },
                  "end": {
                    "line": 215,
                    "column": 14
                  }
                },
                "name": "getTangent"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 8160,
                "end": 8392,
                "loc": {
                  "start": {
                    "line": 215,
                    "column": 14
                  },
                  "end": {
                    "line": 219,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 8161,
                    "end": 8168,
                    "loc": {
                      "start": {
                        "line": 215,
                        "column": 15
                      },
                      "end": {
                        "line": 215,
                        "column": 22
                      }
                    },
                    "name": "atPoint"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 8170,
                  "end": 8392,
                  "loc": {
                    "start": {
                      "line": 215,
                      "column": 24
                    },
                    "end": {
                      "line": 219,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 8228,
                      "end": 8299,
                      "loc": {
                        "start": {
                          "line": 217,
                          "column": 8
                        },
                        "end": {
                          "line": 217,
                          "column": 79
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 8232,
                          "end": 8298,
                          "loc": {
                            "start": {
                              "line": 217,
                              "column": 12
                            },
                            "end": {
                              "line": 217,
                              "column": 78
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 8232,
                            "end": 8235,
                            "loc": {
                              "start": {
                                "line": 217,
                                "column": 12
                              },
                              "end": {
                                "line": 217,
                                "column": 15
                              }
                            },
                            "name": "dir",
                            "leadingComments": null
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 8238,
                            "end": 8298,
                            "loc": {
                              "start": {
                                "line": 217,
                                "column": 18
                              },
                              "end": {
                                "line": 217,
                                "column": 78
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 8238,
                              "end": 8273,
                              "loc": {
                                "start": {
                                  "line": 217,
                                  "column": 18
                                },
                                "end": {
                                  "line": 217,
                                  "column": 53
                                }
                              },
                              "object": {
                                "type": "CallExpression",
                                "start": 8238,
                                "end": 8269,
                                "loc": {
                                  "start": {
                                    "line": 217,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 217,
                                    "column": 49
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 8238,
                                  "end": 8267,
                                  "loc": {
                                    "start": {
                                      "line": 217,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 217,
                                      "column": 47
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 8238,
                                    "end": 8261,
                                    "loc": {
                                      "start": {
                                        "line": 217,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 217,
                                        "column": 41
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 8238,
                                      "end": 8252,
                                      "loc": {
                                        "start": {
                                          "line": 217,
                                          "column": 18
                                        },
                                        "end": {
                                          "line": 217,
                                          "column": 32
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 8238,
                                        "end": 8249,
                                        "loc": {
                                          "start": {
                                            "line": 217,
                                            "column": 18
                                          },
                                          "end": {
                                            "line": 217,
                                            "column": 29
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 8238,
                                          "end": 8242,
                                          "loc": {
                                            "start": {
                                              "line": 217,
                                              "column": 18
                                            },
                                            "end": {
                                              "line": 217,
                                              "column": 22
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 8243,
                                          "end": 8249,
                                          "loc": {
                                            "start": {
                                              "line": 217,
                                              "column": 23
                                            },
                                            "end": {
                                              "line": 217,
                                              "column": 29
                                            }
                                          },
                                          "name": "points"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Literal",
                                        "start": 8250,
                                        "end": 8251,
                                        "loc": {
                                          "start": {
                                            "line": 217,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 217,
                                            "column": 31
                                          }
                                        },
                                        "value": 1,
                                        "rawValue": 1,
                                        "raw": "1"
                                      },
                                      "computed": true
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 8253,
                                      "end": 8261,
                                      "loc": {
                                        "start": {
                                          "line": 217,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 217,
                                          "column": 41
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 8262,
                                    "end": 8267,
                                    "loc": {
                                      "start": {
                                        "line": 217,
                                        "column": 42
                                      },
                                      "end": {
                                        "line": 217,
                                        "column": 47
                                      }
                                    },
                                    "name": "clone"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 8270,
                                "end": 8273,
                                "loc": {
                                  "start": {
                                    "line": 217,
                                    "column": 50
                                  },
                                  "end": {
                                    "line": 217,
                                    "column": 53
                                  }
                                },
                                "name": "sub"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 8274,
                                "end": 8297,
                                "loc": {
                                  "start": {
                                    "line": 217,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 217,
                                    "column": 77
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 8274,
                                  "end": 8288,
                                  "loc": {
                                    "start": {
                                      "line": 217,
                                      "column": 54
                                    },
                                    "end": {
                                      "line": 217,
                                      "column": 68
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 8274,
                                    "end": 8285,
                                    "loc": {
                                      "start": {
                                        "line": 217,
                                        "column": 54
                                      },
                                      "end": {
                                        "line": 217,
                                        "column": 65
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 8274,
                                      "end": 8278,
                                      "loc": {
                                        "start": {
                                          "line": 217,
                                          "column": 54
                                        },
                                        "end": {
                                          "line": 217,
                                          "column": 58
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 8279,
                                      "end": 8285,
                                      "loc": {
                                        "start": {
                                          "line": 217,
                                          "column": 59
                                        },
                                        "end": {
                                          "line": 217,
                                          "column": 65
                                        }
                                      },
                                      "name": "points"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Literal",
                                    "start": 8286,
                                    "end": 8287,
                                    "loc": {
                                      "start": {
                                        "line": 217,
                                        "column": 66
                                      },
                                      "end": {
                                        "line": 217,
                                        "column": 67
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 8289,
                                  "end": 8297,
                                  "loc": {
                                    "start": {
                                      "line": 217,
                                      "column": 69
                                    },
                                    "end": {
                                      "line": 217,
                                      "column": 77
                                    }
                                  },
                                  "name": "position"
                                },
                                "computed": false
                              }
                            ]
                          },
                          "leadingComments": null
                        }
                      ],
                      "kind": "var",
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "returns unit tangent or zero vector",
                          "start": 8181,
                          "end": 8218,
                          "loc": {
                            "start": {
                              "line": 216,
                              "column": 8
                            },
                            "end": {
                              "line": 216,
                              "column": 45
                            }
                          },
                          "range": [
                            8181,
                            8218
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 8309,
                      "end": 8385,
                      "loc": {
                        "start": {
                          "line": 218,
                          "column": 8
                        },
                        "end": {
                          "line": 218,
                          "column": 84
                        }
                      },
                      "argument": {
                        "type": "ConditionalExpression",
                        "start": 8317,
                        "end": 8383,
                        "loc": {
                          "start": {
                            "line": 218,
                            "column": 16
                          },
                          "end": {
                            "line": 218,
                            "column": 82
                          }
                        },
                        "test": {
                          "type": "BinaryExpression",
                          "start": 8317,
                          "end": 8336,
                          "loc": {
                            "start": {
                              "line": 218,
                              "column": 16
                            },
                            "end": {
                              "line": 218,
                              "column": 35
                            }
                          },
                          "left": {
                            "type": "CallExpression",
                            "start": 8317,
                            "end": 8329,
                            "loc": {
                              "start": {
                                "line": 218,
                                "column": 16
                              },
                              "end": {
                                "line": 218,
                                "column": 28
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 8317,
                              "end": 8327,
                              "loc": {
                                "start": {
                                  "line": 218,
                                  "column": 16
                                },
                                "end": {
                                  "line": 218,
                                  "column": 26
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 8317,
                                "end": 8320,
                                "loc": {
                                  "start": {
                                    "line": 218,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 218,
                                    "column": 19
                                  }
                                },
                                "name": "dir"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 8321,
                                "end": 8327,
                                "loc": {
                                  "start": {
                                    "line": 218,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 218,
                                    "column": 26
                                  }
                                },
                                "name": "length"
                              },
                              "computed": false
                            },
                            "arguments": []
                          },
                          "operator": ">",
                          "right": {
                            "type": "Literal",
                            "start": 8332,
                            "end": 8336,
                            "loc": {
                              "start": {
                                "line": 218,
                                "column": 31
                              },
                              "end": {
                                "line": 218,
                                "column": 35
                              }
                            },
                            "value": 1e-9,
                            "rawValue": 1e-9,
                            "raw": "1e-9"
                          }
                        },
                        "consequent": {
                          "type": "CallExpression",
                          "start": 8339,
                          "end": 8354,
                          "loc": {
                            "start": {
                              "line": 218,
                              "column": 38
                            },
                            "end": {
                              "line": 218,
                              "column": 53
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 8339,
                            "end": 8352,
                            "loc": {
                              "start": {
                                "line": 218,
                                "column": 38
                              },
                              "end": {
                                "line": 218,
                                "column": 51
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 8339,
                              "end": 8342,
                              "loc": {
                                "start": {
                                  "line": 218,
                                  "column": 38
                                },
                                "end": {
                                  "line": 218,
                                  "column": 41
                                }
                              },
                              "name": "dir"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 8343,
                              "end": 8352,
                              "loc": {
                                "start": {
                                  "line": 218,
                                  "column": 42
                                },
                                "end": {
                                  "line": 218,
                                  "column": 51
                                }
                              },
                              "name": "normalize"
                            },
                            "computed": false
                          },
                          "arguments": []
                        },
                        "alternate": {
                          "type": "NewExpression",
                          "start": 8357,
                          "end": 8383,
                          "loc": {
                            "start": {
                              "line": 218,
                              "column": 56
                            },
                            "end": {
                              "line": 218,
                              "column": 82
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 8361,
                            "end": 8374,
                            "loc": {
                              "start": {
                                "line": 218,
                                "column": 60
                              },
                              "end": {
                                "line": 218,
                                "column": 73
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 8361,
                              "end": 8366,
                              "loc": {
                                "start": {
                                  "line": 218,
                                  "column": 60
                                },
                                "end": {
                                  "line": 218,
                                  "column": 65
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 8367,
                              "end": 8374,
                              "loc": {
                                "start": {
                                  "line": 218,
                                  "column": 66
                                },
                                "end": {
                                  "line": 218,
                                  "column": 73
                                }
                              },
                              "name": "Vector3"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Literal",
                              "start": 8375,
                              "end": 8376,
                              "loc": {
                                "start": {
                                  "line": 218,
                                  "column": 74
                                },
                                "end": {
                                  "line": 218,
                                  "column": 75
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            },
                            {
                              "type": "Literal",
                              "start": 8378,
                              "end": 8379,
                              "loc": {
                                "start": {
                                  "line": 218,
                                  "column": 77
                                },
                                "end": {
                                  "line": 218,
                                  "column": 78
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            },
                            {
                              "type": "Literal",
                              "start": 8381,
                              "end": 8382,
                              "loc": {
                                "start": {
                                  "line": 218,
                                  "column": 80
                                },
                                "end": {
                                  "line": 218,
                                  "column": 81
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            }
                          ]
                        },
                        "parenthesizedExpression": true
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 8400,
              "end": 8497,
              "loc": {
                "start": {
                  "line": 221,
                  "column": 4
                },
                "end": {
                  "line": 223,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 8400,
                "end": 8409,
                "loc": {
                  "start": {
                    "line": 221,
                    "column": 4
                  },
                  "end": {
                    "line": 221,
                    "column": 13
                  }
                },
                "name": "getLength"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 8409,
                "end": 8497,
                "loc": {
                  "start": {
                    "line": 221,
                    "column": 13
                  },
                  "end": {
                    "line": 223,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 8412,
                  "end": 8497,
                  "loc": {
                    "start": {
                      "line": 221,
                      "column": 16
                    },
                    "end": {
                      "line": 223,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 8423,
                      "end": 8490,
                      "loc": {
                        "start": {
                          "line": 222,
                          "column": 8
                        },
                        "end": {
                          "line": 222,
                          "column": 75
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 8430,
                        "end": 8489,
                        "loc": {
                          "start": {
                            "line": 222,
                            "column": 15
                          },
                          "end": {
                            "line": 222,
                            "column": 74
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 8430,
                          "end": 8464,
                          "loc": {
                            "start": {
                              "line": 222,
                              "column": 15
                            },
                            "end": {
                              "line": 222,
                              "column": 49
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 8430,
                            "end": 8453,
                            "loc": {
                              "start": {
                                "line": 222,
                                "column": 15
                              },
                              "end": {
                                "line": 222,
                                "column": 38
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 8430,
                              "end": 8444,
                              "loc": {
                                "start": {
                                  "line": 222,
                                  "column": 15
                                },
                                "end": {
                                  "line": 222,
                                  "column": 29
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 8430,
                                "end": 8441,
                                "loc": {
                                  "start": {
                                    "line": 222,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 222,
                                    "column": 26
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 8430,
                                  "end": 8434,
                                  "loc": {
                                    "start": {
                                      "line": 222,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 222,
                                      "column": 19
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 8435,
                                  "end": 8441,
                                  "loc": {
                                    "start": {
                                      "line": 222,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 222,
                                      "column": 26
                                    }
                                  },
                                  "name": "points"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Literal",
                                "start": 8442,
                                "end": 8443,
                                "loc": {
                                  "start": {
                                    "line": 222,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 222,
                                    "column": 28
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0"
                              },
                              "computed": true
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 8445,
                              "end": 8453,
                              "loc": {
                                "start": {
                                  "line": 222,
                                  "column": 30
                                },
                                "end": {
                                  "line": 222,
                                  "column": 38
                                }
                              },
                              "name": "position"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 8454,
                            "end": 8464,
                            "loc": {
                              "start": {
                                "line": 222,
                                "column": 39
                              },
                              "end": {
                                "line": 222,
                                "column": 49
                              }
                            },
                            "name": "distanceTo"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 8465,
                            "end": 8488,
                            "loc": {
                              "start": {
                                "line": 222,
                                "column": 50
                              },
                              "end": {
                                "line": 222,
                                "column": 73
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 8465,
                              "end": 8479,
                              "loc": {
                                "start": {
                                  "line": 222,
                                  "column": 50
                                },
                                "end": {
                                  "line": 222,
                                  "column": 64
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 8465,
                                "end": 8476,
                                "loc": {
                                  "start": {
                                    "line": 222,
                                    "column": 50
                                  },
                                  "end": {
                                    "line": 222,
                                    "column": 61
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 8465,
                                  "end": 8469,
                                  "loc": {
                                    "start": {
                                      "line": 222,
                                      "column": 50
                                    },
                                    "end": {
                                      "line": 222,
                                      "column": 54
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 8470,
                                  "end": 8476,
                                  "loc": {
                                    "start": {
                                      "line": 222,
                                      "column": 55
                                    },
                                    "end": {
                                      "line": 222,
                                      "column": 61
                                    }
                                  },
                                  "name": "points"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Literal",
                                "start": 8477,
                                "end": 8478,
                                "loc": {
                                  "start": {
                                    "line": 222,
                                    "column": 62
                                  },
                                  "end": {
                                    "line": 222,
                                    "column": 63
                                  }
                                },
                                "value": 1,
                                "rawValue": 1,
                                "raw": "1"
                              },
                              "computed": true
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 8480,
                              "end": 8488,
                              "loc": {
                                "start": {
                                  "line": 222,
                                  "column": 65
                                },
                                "end": {
                                  "line": 222,
                                  "column": 73
                                }
                              },
                              "name": "position"
                            },
                            "computed": false
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 8505,
              "end": 9019,
              "loc": {
                "start": {
                  "line": 225,
                  "column": 4
                },
                "end": {
                  "line": 236,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 8511,
                "end": 8523,
                "loc": {
                  "start": {
                    "line": 225,
                    "column": 10
                  },
                  "end": {
                    "line": 225,
                    "column": 22
                  }
                },
                "name": "moveRelative"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 8523,
                "end": 9019,
                "loc": {
                  "start": {
                    "line": 225,
                    "column": 22
                  },
                  "end": {
                    "line": 236,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 8524,
                    "end": 8533,
                    "loc": {
                      "start": {
                        "line": 225,
                        "column": 23
                      },
                      "end": {
                        "line": 225,
                        "column": 32
                      }
                    },
                    "name": "direction"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 8535,
                  "end": 9019,
                  "loc": {
                    "start": {
                      "line": 225,
                      "column": 34
                    },
                    "end": {
                      "line": 236,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 8546,
                      "end": 8568,
                      "loc": {
                        "start": {
                          "line": 226,
                          "column": 8
                        },
                        "end": {
                          "line": 226,
                          "column": 30
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 8550,
                          "end": 8567,
                          "loc": {
                            "start": {
                              "line": 226,
                              "column": 12
                            },
                            "end": {
                              "line": 226,
                              "column": 29
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 8550,
                            "end": 8553,
                            "loc": {
                              "start": {
                                "line": 226,
                                "column": 12
                              },
                              "end": {
                                "line": 226,
                                "column": 15
                              }
                            },
                            "name": "pts"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 8556,
                            "end": 8567,
                            "loc": {
                              "start": {
                                "line": 226,
                                "column": 18
                              },
                              "end": {
                                "line": 226,
                                "column": 29
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 8556,
                              "end": 8560,
                              "loc": {
                                "start": {
                                  "line": 226,
                                  "column": 18
                                },
                                "end": {
                                  "line": 226,
                                  "column": 22
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 8561,
                              "end": 8567,
                              "loc": {
                                "start": {
                                  "line": 226,
                                  "column": 23
                                },
                                "end": {
                                  "line": 226,
                                  "column": 29
                                }
                              },
                              "name": "points"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "let",
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " set positions directly",
                          "start": 8578,
                          "end": 8603,
                          "loc": {
                            "start": {
                              "line": 227,
                              "column": 8
                            },
                            "end": {
                              "line": 227,
                              "column": 33
                            }
                          },
                          "range": [
                            8578,
                            8603
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 8613,
                      "end": 8657,
                      "loc": {
                        "start": {
                          "line": 228,
                          "column": 8
                        },
                        "end": {
                          "line": 228,
                          "column": 52
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 8613,
                        "end": 8656,
                        "loc": {
                          "start": {
                            "line": 228,
                            "column": 8
                          },
                          "end": {
                            "line": 228,
                            "column": 51
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 8613,
                          "end": 8624,
                          "loc": {
                            "start": {
                              "line": 228,
                              "column": 8
                            },
                            "end": {
                              "line": 228,
                              "column": 19
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 8613,
                            "end": 8616,
                            "loc": {
                              "start": {
                                "line": 228,
                                "column": 8
                              },
                              "end": {
                                "line": 228,
                                "column": 11
                              }
                            },
                            "name": "pts",
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 8617,
                            "end": 8624,
                            "loc": {
                              "start": {
                                "line": 228,
                                "column": 12
                              },
                              "end": {
                                "line": 228,
                                "column": 19
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 8625,
                            "end": 8655,
                            "loc": {
                              "start": {
                                "line": 228,
                                "column": 20
                              },
                              "end": {
                                "line": 228,
                                "column": 50
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": true,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 8625,
                                "end": 8626,
                                "loc": {
                                  "start": {
                                    "line": 228,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 228,
                                    "column": 21
                                  }
                                },
                                "name": "p"
                              }
                            ],
                            "body": {
                              "type": "CallExpression",
                              "start": 8630,
                              "end": 8655,
                              "loc": {
                                "start": {
                                  "line": 228,
                                  "column": 25
                                },
                                "end": {
                                  "line": 228,
                                  "column": 50
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 8630,
                                "end": 8644,
                                "loc": {
                                  "start": {
                                    "line": 228,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 228,
                                    "column": 39
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 8630,
                                  "end": 8640,
                                  "loc": {
                                    "start": {
                                      "line": 228,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 228,
                                      "column": 35
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 8630,
                                    "end": 8631,
                                    "loc": {
                                      "start": {
                                        "line": 228,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 228,
                                        "column": 26
                                      }
                                    },
                                    "name": "p"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 8632,
                                    "end": 8640,
                                    "loc": {
                                      "start": {
                                        "line": 228,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 228,
                                        "column": 35
                                      }
                                    },
                                    "name": "position"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 8641,
                                  "end": 8644,
                                  "loc": {
                                    "start": {
                                      "line": 228,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 228,
                                      "column": 39
                                    }
                                  },
                                  "name": "add"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 8645,
                                  "end": 8654,
                                  "loc": {
                                    "start": {
                                      "line": 228,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 228,
                                      "column": 49
                                    }
                                  },
                                  "name": "direction"
                                }
                              ]
                            }
                          }
                        ],
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " set positions directly",
                          "start": 8578,
                          "end": 8603,
                          "loc": {
                            "start": {
                              "line": 227,
                              "column": 8
                            },
                            "end": {
                              "line": 227,
                              "column": 33
                            }
                          },
                          "range": [
                            8578,
                            8603
                          ]
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " update geometry after all points are moved",
                          "start": 8667,
                          "end": 8712,
                          "loc": {
                            "start": {
                              "line": 229,
                              "column": 8
                            },
                            "end": {
                              "line": 229,
                              "column": 53
                            }
                          },
                          "range": [
                            8667,
                            8712
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 8722,
                      "end": 8744,
                      "loc": {
                        "start": {
                          "line": 230,
                          "column": 8
                        },
                        "end": {
                          "line": 230,
                          "column": 30
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 8722,
                        "end": 8743,
                        "loc": {
                          "start": {
                            "line": 230,
                            "column": 8
                          },
                          "end": {
                            "line": 230,
                            "column": 29
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 8722,
                          "end": 8741,
                          "loc": {
                            "start": {
                              "line": 230,
                              "column": 8
                            },
                            "end": {
                              "line": 230,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 8722,
                            "end": 8726,
                            "loc": {
                              "start": {
                                "line": 230,
                                "column": 8
                              },
                              "end": {
                                "line": 230,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 8727,
                            "end": 8741,
                            "loc": {
                              "start": {
                                "line": 230,
                                "column": 13
                              },
                              "end": {
                                "line": 230,
                                "column": 27
                              }
                            },
                            "name": "updateGeometry"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "arguments": [],
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " update geometry after all points are moved",
                          "start": 8667,
                          "end": 8712,
                          "loc": {
                            "start": {
                              "line": 229,
                              "column": 8
                            },
                            "end": {
                              "line": 229,
                              "column": 53
                            }
                          },
                          "range": [
                            8667,
                            8712
                          ]
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "this.updateVisualization(); //TODO: why are endpoints not in sync otherwise?",
                          "start": 8754,
                          "end": 8832,
                          "loc": {
                            "start": {
                              "line": 231,
                              "column": 8
                            },
                            "end": {
                              "line": 231,
                              "column": 86
                            }
                          },
                          "range": [
                            8754,
                            8832
                          ]
                        },
                        {
                          "type": "CommentLine",
                          "value": " notify that all the points and the object were moved really",
                          "start": 8842,
                          "end": 8904,
                          "loc": {
                            "start": {
                              "line": 232,
                              "column": 8
                            },
                            "end": {
                              "line": 232,
                              "column": 70
                            }
                          },
                          "range": [
                            8842,
                            8904
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ForOfStatement",
                      "start": 8914,
                      "end": 8971,
                      "loc": {
                        "start": {
                          "line": 233,
                          "column": 8
                        },
                        "end": {
                          "line": 234,
                          "column": 37
                        }
                      },
                      "left": {
                        "type": "VariableDeclaration",
                        "start": 8919,
                        "end": 8924,
                        "loc": {
                          "start": {
                            "line": 233,
                            "column": 13
                          },
                          "end": {
                            "line": 233,
                            "column": 18
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 8923,
                            "end": 8924,
                            "loc": {
                              "start": {
                                "line": 233,
                                "column": 17
                              },
                              "end": {
                                "line": 233,
                                "column": 18
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 8923,
                              "end": 8924,
                              "loc": {
                                "start": {
                                  "line": 233,
                                  "column": 17
                                },
                                "end": {
                                  "line": 233,
                                  "column": 18
                                }
                              },
                              "name": "p",
                              "leadingComments": null
                            },
                            "init": null,
                            "leadingComments": null
                          }
                        ],
                        "kind": "let",
                        "leadingComments": null
                      },
                      "right": {
                        "type": "Identifier",
                        "start": 8928,
                        "end": 8931,
                        "loc": {
                          "start": {
                            "line": 233,
                            "column": 22
                          },
                          "end": {
                            "line": 233,
                            "column": 25
                          }
                        },
                        "name": "pts"
                      },
                      "body": {
                        "type": "ExpressionStatement",
                        "start": 8946,
                        "end": 8971,
                        "loc": {
                          "start": {
                            "line": 234,
                            "column": 12
                          },
                          "end": {
                            "line": 234,
                            "column": 37
                          }
                        },
                        "expression": {
                          "type": "AwaitExpression",
                          "start": 8946,
                          "end": 8970,
                          "loc": {
                            "start": {
                              "line": 234,
                              "column": 12
                            },
                            "end": {
                              "line": 234,
                              "column": 36
                            }
                          },
                          "all": false,
                          "argument": {
                            "type": "CallExpression",
                            "start": 8952,
                            "end": 8970,
                            "loc": {
                              "start": {
                                "line": 234,
                                "column": 18
                              },
                              "end": {
                                "line": 234,
                                "column": 36
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 8952,
                              "end": 8958,
                              "loc": {
                                "start": {
                                  "line": 234,
                                  "column": 18
                                },
                                "end": {
                                  "line": 234,
                                  "column": 24
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 8952,
                                "end": 8953,
                                "loc": {
                                  "start": {
                                    "line": 234,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 234,
                                    "column": 19
                                  }
                                },
                                "name": "p"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 8954,
                                "end": 8958,
                                "loc": {
                                  "start": {
                                    "line": 234,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 234,
                                    "column": 24
                                  }
                                },
                                "name": "emit"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Literal",
                                "start": 8959,
                                "end": 8966,
                                "loc": {
                                  "start": {
                                    "line": 234,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 234,
                                    "column": 32
                                  }
                                },
                                "value": "moved",
                                "rawValue": "moved",
                                "raw": "'moved'"
                              },
                              {
                                "type": "Identifier",
                                "start": 8968,
                                "end": 8969,
                                "loc": {
                                  "start": {
                                    "line": 234,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 234,
                                    "column": 35
                                  }
                                },
                                "name": "p"
                              }
                            ]
                          }
                        }
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "this.updateVisualization(); //TODO: why are endpoints not in sync otherwise?",
                          "start": 8754,
                          "end": 8832,
                          "loc": {
                            "start": {
                              "line": 231,
                              "column": 8
                            },
                            "end": {
                              "line": 231,
                              "column": 86
                            }
                          },
                          "range": [
                            8754,
                            8832
                          ]
                        },
                        {
                          "type": "CommentLine",
                          "value": " notify that all the points and the object were moved really",
                          "start": 8842,
                          "end": 8904,
                          "loc": {
                            "start": {
                              "line": 232,
                              "column": 8
                            },
                            "end": {
                              "line": 232,
                              "column": 70
                            }
                          },
                          "range": [
                            8842,
                            8904
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 8981,
                      "end": 9012,
                      "loc": {
                        "start": {
                          "line": 235,
                          "column": 8
                        },
                        "end": {
                          "line": 235,
                          "column": 39
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 8981,
                        "end": 9011,
                        "loc": {
                          "start": {
                            "line": 235,
                            "column": 8
                          },
                          "end": {
                            "line": 235,
                            "column": 38
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 8987,
                          "end": 9011,
                          "loc": {
                            "start": {
                              "line": 235,
                              "column": 14
                            },
                            "end": {
                              "line": 235,
                              "column": 38
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 8987,
                            "end": 8996,
                            "loc": {
                              "start": {
                                "line": 235,
                                "column": 14
                              },
                              "end": {
                                "line": 235,
                                "column": 23
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 8987,
                              "end": 8991,
                              "loc": {
                                "start": {
                                  "line": 235,
                                  "column": 14
                                },
                                "end": {
                                  "line": 235,
                                  "column": 18
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 8992,
                              "end": 8996,
                              "loc": {
                                "start": {
                                  "line": 235,
                                  "column": 19
                                },
                                "end": {
                                  "line": 235,
                                  "column": 23
                                }
                              },
                              "name": "emit"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Literal",
                              "start": 8997,
                              "end": 9004,
                              "loc": {
                                "start": {
                                  "line": 235,
                                  "column": 24
                                },
                                "end": {
                                  "line": 235,
                                  "column": 31
                                }
                              },
                              "value": "moved",
                              "rawValue": "moved",
                              "raw": "'moved'"
                            },
                            {
                              "type": "ThisExpression",
                              "start": 9006,
                              "end": 9010,
                              "loc": {
                                "start": {
                                  "line": 235,
                                  "column": 33
                                },
                                "end": {
                                  "line": 235,
                                  "column": 37
                                }
                              }
                            }
                          ]
                        }
                      }
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": "simultaneously modify several line's parameters (without intermediate recalculations)",
                  "start": 9027,
                  "end": 9114,
                  "loc": {
                    "start": {
                      "line": 238,
                      "column": 4
                    },
                    "end": {
                      "line": 238,
                      "column": 91
                    }
                  },
                  "range": [
                    9027,
                    9114
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": "one or more parameters can be undefined/null (meaning: do not change)",
                  "start": 9120,
                  "end": 9191,
                  "loc": {
                    "start": {
                      "line": 239,
                      "column": 4
                    },
                    "end": {
                      "line": 239,
                      "column": 75
                    }
                  },
                  "range": [
                    9120,
                    9191
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 9197,
              "end": 9392,
              "loc": {
                "start": {
                  "line": 240,
                  "column": 4
                },
                "end": {
                  "line": 246,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 9197,
                "end": 9203,
                "loc": {
                  "start": {
                    "line": 240,
                    "column": 4
                  },
                  "end": {
                    "line": 240,
                    "column": 10
                  }
                },
                "name": "modify",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 9203,
                "end": 9392,
                "loc": {
                  "start": {
                    "line": 240,
                    "column": 10
                  },
                  "end": {
                    "line": 246,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 9204,
                    "end": 9209,
                    "loc": {
                      "start": {
                        "line": 240,
                        "column": 11
                      },
                      "end": {
                        "line": 240,
                        "column": 16
                      }
                    },
                    "name": "start"
                  },
                  {
                    "type": "Identifier",
                    "start": 9211,
                    "end": 9214,
                    "loc": {
                      "start": {
                        "line": 240,
                        "column": 18
                      },
                      "end": {
                        "line": 240,
                        "column": 21
                      }
                    },
                    "name": "end"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 9216,
                  "end": 9392,
                  "loc": {
                    "start": {
                      "line": 240,
                      "column": 23
                    },
                    "end": {
                      "line": 246,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 9227,
                      "end": 9287,
                      "loc": {
                        "start": {
                          "line": 241,
                          "column": 8
                        },
                        "end": {
                          "line": 242,
                          "column": 48
                        }
                      },
                      "test": {
                        "type": "Identifier",
                        "start": 9231,
                        "end": 9236,
                        "loc": {
                          "start": {
                            "line": 241,
                            "column": 12
                          },
                          "end": {
                            "line": 241,
                            "column": 17
                          }
                        },
                        "name": "start"
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 9251,
                        "end": 9287,
                        "loc": {
                          "start": {
                            "line": 242,
                            "column": 12
                          },
                          "end": {
                            "line": 242,
                            "column": 48
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 9251,
                          "end": 9286,
                          "loc": {
                            "start": {
                              "line": 242,
                              "column": 12
                            },
                            "end": {
                              "line": 242,
                              "column": 47
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 9251,
                            "end": 9279,
                            "loc": {
                              "start": {
                                "line": 242,
                                "column": 12
                              },
                              "end": {
                                "line": 242,
                                "column": 40
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 9251,
                              "end": 9274,
                              "loc": {
                                "start": {
                                  "line": 242,
                                  "column": 12
                                },
                                "end": {
                                  "line": 242,
                                  "column": 35
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 9251,
                                "end": 9265,
                                "loc": {
                                  "start": {
                                    "line": 242,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 242,
                                    "column": 26
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 9251,
                                  "end": 9262,
                                  "loc": {
                                    "start": {
                                      "line": 242,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 242,
                                      "column": 23
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 9251,
                                    "end": 9255,
                                    "loc": {
                                      "start": {
                                        "line": 242,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 242,
                                        "column": 16
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 9256,
                                    "end": 9262,
                                    "loc": {
                                      "start": {
                                        "line": 242,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 242,
                                        "column": 23
                                      }
                                    },
                                    "name": "points"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Literal",
                                  "start": 9263,
                                  "end": 9264,
                                  "loc": {
                                    "start": {
                                      "line": 242,
                                      "column": 24
                                    },
                                    "end": {
                                      "line": 242,
                                      "column": 25
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                "computed": true
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 9266,
                                "end": 9274,
                                "loc": {
                                  "start": {
                                    "line": 242,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 242,
                                    "column": 35
                                  }
                                },
                                "name": "position"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9275,
                              "end": 9279,
                              "loc": {
                                "start": {
                                  "line": 242,
                                  "column": 36
                                },
                                "end": {
                                  "line": 242,
                                  "column": 40
                                }
                              },
                              "name": "copy"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 9280,
                              "end": 9285,
                              "loc": {
                                "start": {
                                  "line": 242,
                                  "column": 41
                                },
                                "end": {
                                  "line": 242,
                                  "column": 46
                                }
                              },
                              "name": "start"
                            }
                          ]
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 9297,
                      "end": 9353,
                      "loc": {
                        "start": {
                          "line": 243,
                          "column": 8
                        },
                        "end": {
                          "line": 244,
                          "column": 46
                        }
                      },
                      "test": {
                        "type": "Identifier",
                        "start": 9301,
                        "end": 9304,
                        "loc": {
                          "start": {
                            "line": 243,
                            "column": 12
                          },
                          "end": {
                            "line": 243,
                            "column": 15
                          }
                        },
                        "name": "end"
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 9319,
                        "end": 9353,
                        "loc": {
                          "start": {
                            "line": 244,
                            "column": 12
                          },
                          "end": {
                            "line": 244,
                            "column": 46
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 9319,
                          "end": 9352,
                          "loc": {
                            "start": {
                              "line": 244,
                              "column": 12
                            },
                            "end": {
                              "line": 244,
                              "column": 45
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 9319,
                            "end": 9347,
                            "loc": {
                              "start": {
                                "line": 244,
                                "column": 12
                              },
                              "end": {
                                "line": 244,
                                "column": 40
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 9319,
                              "end": 9342,
                              "loc": {
                                "start": {
                                  "line": 244,
                                  "column": 12
                                },
                                "end": {
                                  "line": 244,
                                  "column": 35
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 9319,
                                "end": 9333,
                                "loc": {
                                  "start": {
                                    "line": 244,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 244,
                                    "column": 26
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 9319,
                                  "end": 9330,
                                  "loc": {
                                    "start": {
                                      "line": 244,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 244,
                                      "column": 23
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 9319,
                                    "end": 9323,
                                    "loc": {
                                      "start": {
                                        "line": 244,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 244,
                                        "column": 16
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 9324,
                                    "end": 9330,
                                    "loc": {
                                      "start": {
                                        "line": 244,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 244,
                                        "column": 23
                                      }
                                    },
                                    "name": "points"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Literal",
                                  "start": 9331,
                                  "end": 9332,
                                  "loc": {
                                    "start": {
                                      "line": 244,
                                      "column": 24
                                    },
                                    "end": {
                                      "line": 244,
                                      "column": 25
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                },
                                "computed": true
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 9334,
                                "end": 9342,
                                "loc": {
                                  "start": {
                                    "line": 244,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 244,
                                    "column": 35
                                  }
                                },
                                "name": "position"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9343,
                              "end": 9347,
                              "loc": {
                                "start": {
                                  "line": 244,
                                  "column": 36
                                },
                                "end": {
                                  "line": 244,
                                  "column": 40
                                }
                              },
                              "name": "copy"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 9348,
                              "end": 9351,
                              "loc": {
                                "start": {
                                  "line": 244,
                                  "column": 41
                                },
                                "end": {
                                  "line": 244,
                                  "column": 44
                                }
                              },
                              "name": "end"
                            }
                          ]
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 9363,
                      "end": 9385,
                      "loc": {
                        "start": {
                          "line": 245,
                          "column": 8
                        },
                        "end": {
                          "line": 245,
                          "column": 30
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 9363,
                        "end": 9384,
                        "loc": {
                          "start": {
                            "line": 245,
                            "column": 8
                          },
                          "end": {
                            "line": 245,
                            "column": 29
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 9363,
                          "end": 9382,
                          "loc": {
                            "start": {
                              "line": 245,
                              "column": 8
                            },
                            "end": {
                              "line": 245,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 9363,
                            "end": 9367,
                            "loc": {
                              "start": {
                                "line": 245,
                                "column": 8
                              },
                              "end": {
                                "line": 245,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 9368,
                            "end": 9382,
                            "loc": {
                              "start": {
                                "line": 245,
                                "column": 13
                              },
                              "end": {
                                "line": 245,
                                "column": 27
                              }
                            },
                            "name": "updateGeometry"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    }
                  ]
                }
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": "simultaneously modify several line's parameters (without intermediate recalculations)",
                  "start": 9027,
                  "end": 9114,
                  "loc": {
                    "start": {
                      "line": 238,
                      "column": 4
                    },
                    "end": {
                      "line": 238,
                      "column": 91
                    }
                  },
                  "range": [
                    9027,
                    9114
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": "one or more parameters can be undefined/null (meaning: do not change)",
                  "start": 9120,
                  "end": 9191,
                  "loc": {
                    "start": {
                      "line": 239,
                      "column": 4
                    },
                    "end": {
                      "line": 239,
                      "column": 75
                    }
                  },
                  "range": [
                    9120,
                    9191
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 9400,
              "end": 9644,
              "loc": {
                "start": {
                  "line": 248,
                  "column": 4
                },
                "end": {
                  "line": 253,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 9406,
                "end": 9413,
                "loc": {
                  "start": {
                    "line": 248,
                    "column": 10
                  },
                  "end": {
                    "line": 248,
                    "column": 17
                  }
                },
                "name": "endDrag"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 9413,
                "end": 9644,
                "loc": {
                  "start": {
                    "line": 248,
                    "column": 17
                  },
                  "end": {
                    "line": 253,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 9414,
                    "end": 9420,
                    "loc": {
                      "start": {
                        "line": 248,
                        "column": 18
                      },
                      "end": {
                        "line": 248,
                        "column": 24
                      }
                    },
                    "name": "sketch"
                  },
                  {
                    "type": "Identifier",
                    "start": 9422,
                    "end": 9428,
                    "loc": {
                      "start": {
                        "line": 248,
                        "column": 26
                      },
                      "end": {
                        "line": 248,
                        "column": 32
                      }
                    },
                    "name": "socket"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 9430,
                  "end": 9644,
                  "loc": {
                    "start": {
                      "line": 248,
                      "column": 34
                    },
                    "end": {
                      "line": 253,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 9441,
                      "end": 9584,
                      "loc": {
                        "start": {
                          "line": 249,
                          "column": 8
                        },
                        "end": {
                          "line": 251,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "CallExpression",
                        "start": 9445,
                        "end": 9468,
                        "loc": {
                          "start": {
                            "line": 249,
                            "column": 12
                          },
                          "end": {
                            "line": 249,
                            "column": 35
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 9445,
                          "end": 9462,
                          "loc": {
                            "start": {
                              "line": 249,
                              "column": 12
                            },
                            "end": {
                              "line": 249,
                              "column": 29
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 9445,
                            "end": 9451,
                            "loc": {
                              "start": {
                                "line": 249,
                                "column": 12
                              },
                              "end": {
                                "line": 249,
                                "column": 18
                              }
                            },
                            "name": "sketch"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 9452,
                            "end": 9462,
                            "loc": {
                              "start": {
                                "line": 249,
                                "column": 19
                              },
                              "end": {
                                "line": 249,
                                "column": 29
                              }
                            },
                            "name": "isOnSketch"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ThisExpression",
                            "start": 9463,
                            "end": 9467,
                            "loc": {
                              "start": {
                                "line": 249,
                                "column": 30
                              },
                              "end": {
                                "line": 249,
                                "column": 34
                              }
                            }
                          }
                        ]
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 9470,
                        "end": 9584,
                        "loc": {
                          "start": {
                            "line": 249,
                            "column": 37
                          },
                          "end": {
                            "line": 251,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 9485,
                            "end": 9573,
                            "loc": {
                              "start": {
                                "line": 250,
                                "column": 12
                              },
                              "end": {
                                "line": 250,
                                "column": 100
                              }
                            },
                            "expression": {
                              "type": "AwaitExpression",
                              "start": 9485,
                              "end": 9572,
                              "loc": {
                                "start": {
                                  "line": 250,
                                  "column": 12
                                },
                                "end": {
                                  "line": 250,
                                  "column": 99
                                }
                              },
                              "all": false,
                              "argument": {
                                "type": "CallExpression",
                                "start": 9491,
                                "end": 9572,
                                "loc": {
                                  "start": {
                                    "line": 250,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 250,
                                    "column": 99
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 9491,
                                  "end": 9564,
                                  "loc": {
                                    "start": {
                                      "line": 250,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 250,
                                      "column": 91
                                    }
                                  },
                                  "object": {
                                    "type": "CallExpression",
                                    "start": 9491,
                                    "end": 9556,
                                    "loc": {
                                      "start": {
                                        "line": 250,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 250,
                                        "column": 83
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 9491,
                                      "end": 9529,
                                      "loc": {
                                        "start": {
                                          "line": 250,
                                          "column": 18
                                        },
                                        "end": {
                                          "line": 250,
                                          "column": 56
                                        }
                                      },
                                      "object": {
                                        "type": "CallExpression",
                                        "start": 9491,
                                        "end": 9525,
                                        "loc": {
                                          "start": {
                                            "line": 250,
                                            "column": 18
                                          },
                                          "end": {
                                            "line": 250,
                                            "column": 52
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 9491,
                                          "end": 9517,
                                          "loc": {
                                            "start": {
                                              "line": 250,
                                              "column": 18
                                            },
                                            "end": {
                                              "line": 250,
                                              "column": 44
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 9491,
                                            "end": 9495,
                                            "loc": {
                                              "start": {
                                                "line": 250,
                                                "column": 18
                                              },
                                              "end": {
                                                "line": 250,
                                                "column": 22
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 9496,
                                            "end": 9517,
                                            "loc": {
                                              "start": {
                                                "line": 250,
                                                "column": 23
                                              },
                                              "end": {
                                                "line": 250,
                                                "column": 44
                                              }
                                            },
                                            "name": "prepareUpdateToServer"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 9518,
                                            "end": 9524,
                                            "loc": {
                                              "start": {
                                                "line": 250,
                                                "column": 45
                                              },
                                              "end": {
                                                "line": 250,
                                                "column": 51
                                              }
                                            },
                                            "name": "sketch"
                                          }
                                        ]
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 9526,
                                        "end": 9529,
                                        "loc": {
                                          "start": {
                                            "line": 250,
                                            "column": 53
                                          },
                                          "end": {
                                            "line": 250,
                                            "column": 56
                                          }
                                        },
                                        "name": "and"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "CallExpression",
                                        "start": 9530,
                                        "end": 9555,
                                        "loc": {
                                          "start": {
                                            "line": 250,
                                            "column": 57
                                          },
                                          "end": {
                                            "line": 250,
                                            "column": 82
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 9530,
                                          "end": 9553,
                                          "loc": {
                                            "start": {
                                              "line": 250,
                                              "column": 57
                                            },
                                            "end": {
                                              "line": 250,
                                              "column": 80
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 9530,
                                            "end": 9536,
                                            "loc": {
                                              "start": {
                                                "line": 250,
                                                "column": 57
                                              },
                                              "end": {
                                                "line": 250,
                                                "column": 63
                                              }
                                            },
                                            "name": "sketch"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 9537,
                                            "end": 9553,
                                            "loc": {
                                              "start": {
                                                "line": 250,
                                                "column": 64
                                              },
                                              "end": {
                                                "line": 250,
                                                "column": 80
                                              }
                                            },
                                            "name": "updateFromServer"
                                          },
                                          "computed": false
                                        },
                                        "arguments": []
                                      }
                                    ]
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 9557,
                                    "end": 9564,
                                    "loc": {
                                      "start": {
                                        "line": 250,
                                        "column": 84
                                      },
                                      "end": {
                                        "line": 250,
                                        "column": 91
                                      }
                                    },
                                    "name": "execute"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 9565,
                                    "end": 9571,
                                    "loc": {
                                      "start": {
                                        "line": 250,
                                        "column": 92
                                      },
                                      "end": {
                                        "line": 250,
                                        "column": 98
                                      }
                                    },
                                    "name": "socket"
                                  }
                                ]
                              }
                            }
                          }
                        ]
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 9594,
                      "end": 9637,
                      "loc": {
                        "start": {
                          "line": 252,
                          "column": 8
                        },
                        "end": {
                          "line": 252,
                          "column": 51
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 9594,
                        "end": 9636,
                        "loc": {
                          "start": {
                            "line": 252,
                            "column": 8
                          },
                          "end": {
                            "line": 252,
                            "column": 50
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 9600,
                          "end": 9636,
                          "loc": {
                            "start": {
                              "line": 252,
                              "column": 14
                            },
                            "end": {
                              "line": 252,
                              "column": 50
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 9600,
                            "end": 9609,
                            "loc": {
                              "start": {
                                "line": 252,
                                "column": 14
                              },
                              "end": {
                                "line": 252,
                                "column": 23
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 9600,
                              "end": 9604,
                              "loc": {
                                "start": {
                                  "line": 252,
                                  "column": 14
                                },
                                "end": {
                                  "line": 252,
                                  "column": 18
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9605,
                              "end": 9609,
                              "loc": {
                                "start": {
                                  "line": 252,
                                  "column": 19
                                },
                                "end": {
                                  "line": 252,
                                  "column": 23
                                }
                              },
                              "name": "emit"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Literal",
                              "start": 9610,
                              "end": 9619,
                              "loc": {
                                "start": {
                                  "line": 252,
                                  "column": 24
                                },
                                "end": {
                                  "line": 252,
                                  "column": 33
                                }
                              },
                              "value": "dragend",
                              "rawValue": "dragend",
                              "raw": "'dragend'"
                            },
                            {
                              "type": "Identifier",
                              "start": 9621,
                              "end": 9627,
                              "loc": {
                                "start": {
                                  "line": 252,
                                  "column": 35
                                },
                                "end": {
                                  "line": 252,
                                  "column": 41
                                }
                              },
                              "name": "sketch"
                            },
                            {
                              "type": "Identifier",
                              "start": 9629,
                              "end": 9635,
                              "loc": {
                                "start": {
                                  "line": 252,
                                  "column": 43
                                },
                                "end": {
                                  "line": 252,
                                  "column": 49
                                }
                              },
                              "name": "socket"
                            }
                          ]
                        }
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 9652,
              "end": 9802,
              "loc": {
                "start": {
                  "line": 255,
                  "column": 4
                },
                "end": {
                  "line": 258,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 9652,
                "end": 9662,
                "loc": {
                  "start": {
                    "line": 255,
                    "column": 4
                  },
                  "end": {
                    "line": 255,
                    "column": 14
                  }
                },
                "name": "setVisible"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 9662,
                "end": 9802,
                "loc": {
                  "start": {
                    "line": 255,
                    "column": 14
                  },
                  "end": {
                    "line": 258,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 9663,
                    "end": 9673,
                    "loc": {
                      "start": {
                        "line": 255,
                        "column": 15
                      },
                      "end": {
                        "line": 255,
                        "column": 25
                      }
                    },
                    "name": "visibility"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 9675,
                  "end": 9802,
                  "loc": {
                    "start": {
                      "line": 255,
                      "column": 27
                    },
                    "end": {
                      "line": 258,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 9686,
                      "end": 9726,
                      "loc": {
                        "start": {
                          "line": 256,
                          "column": 8
                        },
                        "end": {
                          "line": 256,
                          "column": 48
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 9686,
                        "end": 9725,
                        "loc": {
                          "start": {
                            "line": 256,
                            "column": 8
                          },
                          "end": {
                            "line": 256,
                            "column": 47
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 9686,
                          "end": 9712,
                          "loc": {
                            "start": {
                              "line": 256,
                              "column": 8
                            },
                            "end": {
                              "line": 256,
                              "column": 34
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 9686,
                            "end": 9704,
                            "loc": {
                              "start": {
                                "line": 256,
                                "column": 8
                              },
                              "end": {
                                "line": 256,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 9686,
                              "end": 9695,
                              "loc": {
                                "start": {
                                  "line": 256,
                                  "column": 8
                                },
                                "end": {
                                  "line": 256,
                                  "column": 17
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 9686,
                                "end": 9690,
                                "loc": {
                                  "start": {
                                    "line": 256,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 256,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 9691,
                                "end": 9695,
                                "loc": {
                                  "start": {
                                    "line": 256,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 256,
                                    "column": 17
                                  }
                                },
                                "name": "mesh"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9696,
                              "end": 9704,
                              "loc": {
                                "start": {
                                  "line": 256,
                                  "column": 18
                                },
                                "end": {
                                  "line": 256,
                                  "column": 26
                                }
                              },
                              "name": "material"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 9705,
                            "end": 9712,
                            "loc": {
                              "start": {
                                "line": 256,
                                "column": 27
                              },
                              "end": {
                                "line": 256,
                                "column": 34
                              }
                            },
                            "name": "visible"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Identifier",
                          "start": 9715,
                          "end": 9725,
                          "loc": {
                            "start": {
                              "line": 256,
                              "column": 37
                            },
                            "end": {
                              "line": 256,
                              "column": 47
                            }
                          },
                          "name": "visibility"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 9736,
                      "end": 9795,
                      "loc": {
                        "start": {
                          "line": 257,
                          "column": 8
                        },
                        "end": {
                          "line": 257,
                          "column": 67
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 9736,
                        "end": 9794,
                        "loc": {
                          "start": {
                            "line": 257,
                            "column": 8
                          },
                          "end": {
                            "line": 257,
                            "column": 66
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 9736,
                          "end": 9755,
                          "loc": {
                            "start": {
                              "line": 257,
                              "column": 8
                            },
                            "end": {
                              "line": 257,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 9736,
                            "end": 9747,
                            "loc": {
                              "start": {
                                "line": 257,
                                "column": 8
                              },
                              "end": {
                                "line": 257,
                                "column": 19
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 9736,
                              "end": 9740,
                              "loc": {
                                "start": {
                                  "line": 257,
                                  "column": 8
                                },
                                "end": {
                                  "line": 257,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9741,
                              "end": 9747,
                              "loc": {
                                "start": {
                                  "line": 257,
                                  "column": 13
                                },
                                "end": {
                                  "line": 257,
                                  "column": 19
                                }
                              },
                              "name": "points"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 9748,
                            "end": 9755,
                            "loc": {
                              "start": {
                                "line": 257,
                                "column": 20
                              },
                              "end": {
                                "line": 257,
                                "column": 27
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 9756,
                            "end": 9793,
                            "loc": {
                              "start": {
                                "line": 257,
                                "column": 28
                              },
                              "end": {
                                "line": 257,
                                "column": 65
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": true,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 9756,
                                "end": 9761,
                                "loc": {
                                  "start": {
                                    "line": 257,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 257,
                                    "column": 33
                                  }
                                },
                                "name": "point"
                              }
                            ],
                            "body": {
                              "type": "CallExpression",
                              "start": 9765,
                              "end": 9793,
                              "loc": {
                                "start": {
                                  "line": 257,
                                  "column": 37
                                },
                                "end": {
                                  "line": 257,
                                  "column": 65
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 9765,
                                "end": 9781,
                                "loc": {
                                  "start": {
                                    "line": 257,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 257,
                                    "column": 53
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 9765,
                                  "end": 9770,
                                  "loc": {
                                    "start": {
                                      "line": 257,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 257,
                                      "column": 42
                                    }
                                  },
                                  "name": "point"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 9771,
                                  "end": 9781,
                                  "loc": {
                                    "start": {
                                      "line": 257,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 257,
                                      "column": 53
                                    }
                                  },
                                  "name": "setVisible"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 9782,
                                  "end": 9792,
                                  "loc": {
                                    "start": {
                                      "line": 257,
                                      "column": 54
                                    },
                                    "end": {
                                      "line": 257,
                                      "column": 64
                                    }
                                  },
                                  "name": "visibility"
                                }
                              ]
                            }
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 9810,
              "end": 9829,
              "loc": {
                "start": {
                  "line": 260,
                  "column": 4
                },
                "end": {
                  "line": 260,
                  "column": 23
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 9810,
                "end": 9824,
                "loc": {
                  "start": {
                    "line": 260,
                    "column": 4
                  },
                  "end": {
                    "line": 260,
                    "column": 18
                  }
                },
                "name": "updateGeometry"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 9824,
                "end": 9829,
                "loc": {
                  "start": {
                    "line": 260,
                    "column": 18
                  },
                  "end": {
                    "line": 260,
                    "column": 23
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 9827,
                  "end": 9829,
                  "loc": {
                    "start": {
                      "line": 260,
                      "column": 21
                    },
                    "end": {
                      "line": 260,
                      "column": 23
                    }
                  },
                  "body": []
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 9837,
              "end": 10374,
              "loc": {
                "start": {
                  "line": 262,
                  "column": 4
                },
                "end": {
                  "line": 270,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 9837,
                "end": 9857,
                "loc": {
                  "start": {
                    "line": 262,
                    "column": 4
                  },
                  "end": {
                    "line": 262,
                    "column": 24
                  }
                },
                "name": "getAuxiliaryGeometry"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 9857,
                "end": 10374,
                "loc": {
                  "start": {
                    "line": 262,
                    "column": 24
                  },
                  "end": {
                    "line": 270,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 9860,
                  "end": 10374,
                  "loc": {
                    "start": {
                      "line": 262,
                      "column": 27
                    },
                    "end": {
                      "line": 270,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 9871,
                      "end": 9957,
                      "loc": {
                        "start": {
                          "line": 263,
                          "column": 8
                        },
                        "end": {
                          "line": 263,
                          "column": 94
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 9875,
                          "end": 9956,
                          "loc": {
                            "start": {
                              "line": 263,
                              "column": 12
                            },
                            "end": {
                              "line": 263,
                              "column": 93
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 9875,
                            "end": 9881,
                            "loc": {
                              "start": {
                                "line": 263,
                                "column": 12
                              },
                              "end": {
                                "line": 263,
                                "column": 18
                              }
                            },
                            "name": "normal"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 9884,
                            "end": 9956,
                            "loc": {
                              "start": {
                                "line": 263,
                                "column": 21
                              },
                              "end": {
                                "line": 263,
                                "column": 93
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 9884,
                              "end": 9954,
                              "loc": {
                                "start": {
                                  "line": 263,
                                  "column": 21
                                },
                                "end": {
                                  "line": 263,
                                  "column": 91
                                }
                              },
                              "object": {
                                "type": "CallExpression",
                                "start": 9884,
                                "end": 9944,
                                "loc": {
                                  "start": {
                                    "line": 263,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 263,
                                    "column": 81
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 9884,
                                  "end": 9919,
                                  "loc": {
                                    "start": {
                                      "line": 263,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 263,
                                      "column": 56
                                    }
                                  },
                                  "object": {
                                    "type": "CallExpression",
                                    "start": 9884,
                                    "end": 9915,
                                    "loc": {
                                      "start": {
                                        "line": 263,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 263,
                                        "column": 52
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 9884,
                                      "end": 9913,
                                      "loc": {
                                        "start": {
                                          "line": 263,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 263,
                                          "column": 50
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 9884,
                                        "end": 9907,
                                        "loc": {
                                          "start": {
                                            "line": 263,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 263,
                                            "column": 44
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 9884,
                                          "end": 9898,
                                          "loc": {
                                            "start": {
                                              "line": 263,
                                              "column": 21
                                            },
                                            "end": {
                                              "line": 263,
                                              "column": 35
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 9884,
                                            "end": 9895,
                                            "loc": {
                                              "start": {
                                                "line": 263,
                                                "column": 21
                                              },
                                              "end": {
                                                "line": 263,
                                                "column": 32
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 9884,
                                              "end": 9888,
                                              "loc": {
                                                "start": {
                                                  "line": 263,
                                                  "column": 21
                                                },
                                                "end": {
                                                  "line": 263,
                                                  "column": 25
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 9889,
                                              "end": 9895,
                                              "loc": {
                                                "start": {
                                                  "line": 263,
                                                  "column": 26
                                                },
                                                "end": {
                                                  "line": 263,
                                                  "column": 32
                                                }
                                              },
                                              "name": "points"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Literal",
                                            "start": 9896,
                                            "end": 9897,
                                            "loc": {
                                              "start": {
                                                "line": 263,
                                                "column": 33
                                              },
                                              "end": {
                                                "line": 263,
                                                "column": 34
                                              }
                                            },
                                            "value": 1,
                                            "rawValue": 1,
                                            "raw": "1"
                                          },
                                          "computed": true
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 9899,
                                          "end": 9907,
                                          "loc": {
                                            "start": {
                                              "line": 263,
                                              "column": 36
                                            },
                                            "end": {
                                              "line": 263,
                                              "column": 44
                                            }
                                          },
                                          "name": "position"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 9908,
                                        "end": 9913,
                                        "loc": {
                                          "start": {
                                            "line": 263,
                                            "column": 45
                                          },
                                          "end": {
                                            "line": 263,
                                            "column": 50
                                          }
                                        },
                                        "name": "clone"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 9916,
                                    "end": 9919,
                                    "loc": {
                                      "start": {
                                        "line": 263,
                                        "column": 53
                                      },
                                      "end": {
                                        "line": 263,
                                        "column": 56
                                      }
                                    },
                                    "name": "sub"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "MemberExpression",
                                    "start": 9920,
                                    "end": 9943,
                                    "loc": {
                                      "start": {
                                        "line": 263,
                                        "column": 57
                                      },
                                      "end": {
                                        "line": 263,
                                        "column": 80
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 9920,
                                      "end": 9934,
                                      "loc": {
                                        "start": {
                                          "line": 263,
                                          "column": 57
                                        },
                                        "end": {
                                          "line": 263,
                                          "column": 71
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 9920,
                                        "end": 9931,
                                        "loc": {
                                          "start": {
                                            "line": 263,
                                            "column": 57
                                          },
                                          "end": {
                                            "line": 263,
                                            "column": 68
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 9920,
                                          "end": 9924,
                                          "loc": {
                                            "start": {
                                              "line": 263,
                                              "column": 57
                                            },
                                            "end": {
                                              "line": 263,
                                              "column": 61
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 9925,
                                          "end": 9931,
                                          "loc": {
                                            "start": {
                                              "line": 263,
                                              "column": 62
                                            },
                                            "end": {
                                              "line": 263,
                                              "column": 68
                                            }
                                          },
                                          "name": "points"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Literal",
                                        "start": 9932,
                                        "end": 9933,
                                        "loc": {
                                          "start": {
                                            "line": 263,
                                            "column": 69
                                          },
                                          "end": {
                                            "line": 263,
                                            "column": 70
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      "computed": true
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 9935,
                                      "end": 9943,
                                      "loc": {
                                        "start": {
                                          "line": 263,
                                          "column": 72
                                        },
                                        "end": {
                                          "line": 263,
                                          "column": 80
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  }
                                ]
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 9945,
                                "end": 9954,
                                "loc": {
                                  "start": {
                                    "line": 263,
                                    "column": 82
                                  },
                                  "end": {
                                    "line": 263,
                                    "column": 91
                                  }
                                },
                                "name": "normalize"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 9967,
                      "end": 10010,
                      "loc": {
                        "start": {
                          "line": 264,
                          "column": 8
                        },
                        "end": {
                          "line": 264,
                          "column": 51
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 9971,
                          "end": 10009,
                          "loc": {
                            "start": {
                              "line": 264,
                              "column": 12
                            },
                            "end": {
                              "line": 264,
                              "column": 50
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 9971,
                            "end": 9976,
                            "loc": {
                              "start": {
                                "line": 264,
                                "column": 12
                              },
                              "end": {
                                "line": 264,
                                "column": 17
                              }
                            },
                            "name": "coeff"
                          },
                          "init": {
                            "type": "BinaryExpression",
                            "start": 9979,
                            "end": 10009,
                            "loc": {
                              "start": {
                                "line": 264,
                                "column": 20
                              },
                              "end": {
                                "line": 264,
                                "column": 50
                              }
                            },
                            "left": {
                              "type": "Literal",
                              "start": 9979,
                              "end": 9984,
                              "loc": {
                                "start": {
                                  "line": 264,
                                  "column": 20
                                },
                                "end": {
                                  "line": 264,
                                  "column": 25
                                }
                              },
                              "value": 10000,
                              "rawValue": 10000,
                              "raw": "10000"
                            },
                            "operator": "*",
                            "right": {
                              "type": "MemberExpression",
                              "start": 9987,
                              "end": 10009,
                              "loc": {
                                "start": {
                                  "line": 264,
                                  "column": 28
                                },
                                "end": {
                                  "line": 264,
                                  "column": 50
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 9987,
                                "end": 10007,
                                "loc": {
                                  "start": {
                                    "line": 264,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 264,
                                    "column": 48
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 9987,
                                  "end": 10001,
                                  "loc": {
                                    "start": {
                                      "line": 264,
                                      "column": 28
                                    },
                                    "end": {
                                      "line": 264,
                                      "column": 42
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 9987,
                                    "end": 9998,
                                    "loc": {
                                      "start": {
                                        "line": 264,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 264,
                                        "column": 39
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 9987,
                                      "end": 9991,
                                      "loc": {
                                        "start": {
                                          "line": 264,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 264,
                                          "column": 32
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 9992,
                                      "end": 9998,
                                      "loc": {
                                        "start": {
                                          "line": 264,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 264,
                                          "column": 39
                                        }
                                      },
                                      "name": "points"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Literal",
                                    "start": 9999,
                                    "end": 10000,
                                    "loc": {
                                      "start": {
                                        "line": 264,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 264,
                                        "column": 41
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 10002,
                                  "end": 10007,
                                  "loc": {
                                    "start": {
                                      "line": 264,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 264,
                                      "column": 48
                                    }
                                  },
                                  "name": "scale"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 10008,
                                "end": 10009,
                                "loc": {
                                  "start": {
                                    "line": 264,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 264,
                                    "column": 50
                                  }
                                },
                                "name": "x"
                              },
                              "computed": false
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 10020,
                      "end": 10132,
                      "loc": {
                        "start": {
                          "line": 265,
                          "column": 8
                        },
                        "end": {
                          "line": 265,
                          "column": 120
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 10024,
                          "end": 10131,
                          "loc": {
                            "start": {
                              "line": 265,
                              "column": 12
                            },
                            "end": {
                              "line": 265,
                              "column": 119
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 10024,
                            "end": 10025,
                            "loc": {
                              "start": {
                                "line": 265,
                                "column": 12
                              },
                              "end": {
                                "line": 265,
                                "column": 13
                              }
                            },
                            "name": "a"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 10028,
                            "end": 10131,
                            "loc": {
                              "start": {
                                "line": 265,
                                "column": 16
                              },
                              "end": {
                                "line": 265,
                                "column": 119
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 10028,
                              "end": 10063,
                              "loc": {
                                "start": {
                                  "line": 265,
                                  "column": 16
                                },
                                "end": {
                                  "line": 265,
                                  "column": 51
                                }
                              },
                              "object": {
                                "type": "CallExpression",
                                "start": 10028,
                                "end": 10059,
                                "loc": {
                                  "start": {
                                    "line": 265,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 265,
                                    "column": 47
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 10028,
                                  "end": 10057,
                                  "loc": {
                                    "start": {
                                      "line": 265,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 265,
                                      "column": 45
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 10028,
                                    "end": 10051,
                                    "loc": {
                                      "start": {
                                        "line": 265,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 265,
                                        "column": 39
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 10028,
                                      "end": 10042,
                                      "loc": {
                                        "start": {
                                          "line": 265,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 265,
                                          "column": 30
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 10028,
                                        "end": 10039,
                                        "loc": {
                                          "start": {
                                            "line": 265,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 265,
                                            "column": 27
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 10028,
                                          "end": 10032,
                                          "loc": {
                                            "start": {
                                              "line": 265,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 265,
                                              "column": 20
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 10033,
                                          "end": 10039,
                                          "loc": {
                                            "start": {
                                              "line": 265,
                                              "column": 21
                                            },
                                            "end": {
                                              "line": 265,
                                              "column": 27
                                            }
                                          },
                                          "name": "points"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Literal",
                                        "start": 10040,
                                        "end": 10041,
                                        "loc": {
                                          "start": {
                                            "line": 265,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 265,
                                            "column": 29
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      "computed": true
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 10043,
                                      "end": 10051,
                                      "loc": {
                                        "start": {
                                          "line": 265,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 265,
                                          "column": 39
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 10052,
                                    "end": 10057,
                                    "loc": {
                                      "start": {
                                        "line": 265,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 265,
                                        "column": 45
                                      }
                                    },
                                    "name": "clone"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 10060,
                                "end": 10063,
                                "loc": {
                                  "start": {
                                    "line": 265,
                                    "column": 48
                                  },
                                  "end": {
                                    "line": 265,
                                    "column": 51
                                  }
                                },
                                "name": "add"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "CallExpression",
                                "start": 10064,
                                "end": 10130,
                                "loc": {
                                  "start": {
                                    "line": 265,
                                    "column": 52
                                  },
                                  "end": {
                                    "line": 265,
                                    "column": 118
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 10064,
                                  "end": 10104,
                                  "loc": {
                                    "start": {
                                      "line": 265,
                                      "column": 52
                                    },
                                    "end": {
                                      "line": 265,
                                      "column": 92
                                    }
                                  },
                                  "object": {
                                    "type": "CallExpression",
                                    "start": 10064,
                                    "end": 10100,
                                    "loc": {
                                      "start": {
                                        "line": 265,
                                        "column": 52
                                      },
                                      "end": {
                                        "line": 265,
                                        "column": 88
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 10064,
                                      "end": 10093,
                                      "loc": {
                                        "start": {
                                          "line": 265,
                                          "column": 52
                                        },
                                        "end": {
                                          "line": 265,
                                          "column": 81
                                        }
                                      },
                                      "object": {
                                        "type": "CallExpression",
                                        "start": 10064,
                                        "end": 10078,
                                        "loc": {
                                          "start": {
                                            "line": 265,
                                            "column": 52
                                          },
                                          "end": {
                                            "line": 265,
                                            "column": 66
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 10064,
                                          "end": 10076,
                                          "loc": {
                                            "start": {
                                              "line": 265,
                                              "column": 52
                                            },
                                            "end": {
                                              "line": 265,
                                              "column": 64
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 10064,
                                            "end": 10070,
                                            "loc": {
                                              "start": {
                                                "line": 265,
                                                "column": 52
                                              },
                                              "end": {
                                                "line": 265,
                                                "column": 58
                                              }
                                            },
                                            "name": "normal"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 10071,
                                            "end": 10076,
                                            "loc": {
                                              "start": {
                                                "line": 265,
                                                "column": 59
                                              },
                                              "end": {
                                                "line": 265,
                                                "column": 64
                                              }
                                            },
                                            "name": "clone"
                                          },
                                          "computed": false
                                        },
                                        "arguments": []
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 10079,
                                        "end": 10093,
                                        "loc": {
                                          "start": {
                                            "line": 265,
                                            "column": 67
                                          },
                                          "end": {
                                            "line": 265,
                                            "column": 81
                                          }
                                        },
                                        "name": "multiplyScalar"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 10094,
                                        "end": 10099,
                                        "loc": {
                                          "start": {
                                            "line": 265,
                                            "column": 82
                                          },
                                          "end": {
                                            "line": 265,
                                            "column": 87
                                          }
                                        },
                                        "name": "coeff"
                                      }
                                    ]
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 10101,
                                    "end": 10104,
                                    "loc": {
                                      "start": {
                                        "line": 265,
                                        "column": 89
                                      },
                                      "end": {
                                        "line": 265,
                                        "column": 92
                                      }
                                    },
                                    "name": "sub"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "CallExpression",
                                    "start": 10105,
                                    "end": 10129,
                                    "loc": {
                                      "start": {
                                        "line": 265,
                                        "column": 93
                                      },
                                      "end": {
                                        "line": 265,
                                        "column": 117
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 10105,
                                      "end": 10127,
                                      "loc": {
                                        "start": {
                                          "line": 265,
                                          "column": 93
                                        },
                                        "end": {
                                          "line": 265,
                                          "column": 115
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 10105,
                                        "end": 10109,
                                        "loc": {
                                          "start": {
                                            "line": 265,
                                            "column": 93
                                          },
                                          "end": {
                                            "line": 265,
                                            "column": 97
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 10110,
                                        "end": 10127,
                                        "loc": {
                                          "start": {
                                            "line": 265,
                                            "column": 98
                                          },
                                          "end": {
                                            "line": 265,
                                            "column": 115
                                          }
                                        },
                                        "name": "getMiddlePosition"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                ]
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 10142,
                      "end": 10255,
                      "loc": {
                        "start": {
                          "line": 266,
                          "column": 8
                        },
                        "end": {
                          "line": 266,
                          "column": 121
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 10146,
                          "end": 10254,
                          "loc": {
                            "start": {
                              "line": 266,
                              "column": 12
                            },
                            "end": {
                              "line": 266,
                              "column": 120
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 10146,
                            "end": 10147,
                            "loc": {
                              "start": {
                                "line": 266,
                                "column": 12
                              },
                              "end": {
                                "line": 266,
                                "column": 13
                              }
                            },
                            "name": "b"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 10150,
                            "end": 10254,
                            "loc": {
                              "start": {
                                "line": 266,
                                "column": 16
                              },
                              "end": {
                                "line": 266,
                                "column": 120
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 10150,
                              "end": 10185,
                              "loc": {
                                "start": {
                                  "line": 266,
                                  "column": 16
                                },
                                "end": {
                                  "line": 266,
                                  "column": 51
                                }
                              },
                              "object": {
                                "type": "CallExpression",
                                "start": 10150,
                                "end": 10181,
                                "loc": {
                                  "start": {
                                    "line": 266,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 266,
                                    "column": 47
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 10150,
                                  "end": 10179,
                                  "loc": {
                                    "start": {
                                      "line": 266,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 266,
                                      "column": 45
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 10150,
                                    "end": 10173,
                                    "loc": {
                                      "start": {
                                        "line": 266,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 266,
                                        "column": 39
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 10150,
                                      "end": 10164,
                                      "loc": {
                                        "start": {
                                          "line": 266,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 266,
                                          "column": 30
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 10150,
                                        "end": 10161,
                                        "loc": {
                                          "start": {
                                            "line": 266,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 266,
                                            "column": 27
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 10150,
                                          "end": 10154,
                                          "loc": {
                                            "start": {
                                              "line": 266,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 266,
                                              "column": 20
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 10155,
                                          "end": 10161,
                                          "loc": {
                                            "start": {
                                              "line": 266,
                                              "column": 21
                                            },
                                            "end": {
                                              "line": 266,
                                              "column": 27
                                            }
                                          },
                                          "name": "points"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Literal",
                                        "start": 10162,
                                        "end": 10163,
                                        "loc": {
                                          "start": {
                                            "line": 266,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 266,
                                            "column": 29
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      "computed": true
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 10165,
                                      "end": 10173,
                                      "loc": {
                                        "start": {
                                          "line": 266,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 266,
                                          "column": 39
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 10174,
                                    "end": 10179,
                                    "loc": {
                                      "start": {
                                        "line": 266,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 266,
                                        "column": 45
                                      }
                                    },
                                    "name": "clone"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 10182,
                                "end": 10185,
                                "loc": {
                                  "start": {
                                    "line": 266,
                                    "column": 48
                                  },
                                  "end": {
                                    "line": 266,
                                    "column": 51
                                  }
                                },
                                "name": "add"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "CallExpression",
                                "start": 10186,
                                "end": 10253,
                                "loc": {
                                  "start": {
                                    "line": 266,
                                    "column": 52
                                  },
                                  "end": {
                                    "line": 266,
                                    "column": 119
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 10186,
                                  "end": 10227,
                                  "loc": {
                                    "start": {
                                      "line": 266,
                                      "column": 52
                                    },
                                    "end": {
                                      "line": 266,
                                      "column": 93
                                    }
                                  },
                                  "object": {
                                    "type": "CallExpression",
                                    "start": 10186,
                                    "end": 10223,
                                    "loc": {
                                      "start": {
                                        "line": 266,
                                        "column": 52
                                      },
                                      "end": {
                                        "line": 266,
                                        "column": 89
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 10186,
                                      "end": 10215,
                                      "loc": {
                                        "start": {
                                          "line": 266,
                                          "column": 52
                                        },
                                        "end": {
                                          "line": 266,
                                          "column": 81
                                        }
                                      },
                                      "object": {
                                        "type": "CallExpression",
                                        "start": 10186,
                                        "end": 10200,
                                        "loc": {
                                          "start": {
                                            "line": 266,
                                            "column": 52
                                          },
                                          "end": {
                                            "line": 266,
                                            "column": 66
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 10186,
                                          "end": 10198,
                                          "loc": {
                                            "start": {
                                              "line": 266,
                                              "column": 52
                                            },
                                            "end": {
                                              "line": 266,
                                              "column": 64
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 10186,
                                            "end": 10192,
                                            "loc": {
                                              "start": {
                                                "line": 266,
                                                "column": 52
                                              },
                                              "end": {
                                                "line": 266,
                                                "column": 58
                                              }
                                            },
                                            "name": "normal"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 10193,
                                            "end": 10198,
                                            "loc": {
                                              "start": {
                                                "line": 266,
                                                "column": 59
                                              },
                                              "end": {
                                                "line": 266,
                                                "column": 64
                                              }
                                            },
                                            "name": "clone"
                                          },
                                          "computed": false
                                        },
                                        "arguments": []
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 10201,
                                        "end": 10215,
                                        "loc": {
                                          "start": {
                                            "line": 266,
                                            "column": 67
                                          },
                                          "end": {
                                            "line": 266,
                                            "column": 81
                                          }
                                        },
                                        "name": "multiplyScalar"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "UnaryExpression",
                                        "start": 10216,
                                        "end": 10222,
                                        "loc": {
                                          "start": {
                                            "line": 266,
                                            "column": 82
                                          },
                                          "end": {
                                            "line": 266,
                                            "column": 88
                                          }
                                        },
                                        "operator": "-",
                                        "prefix": true,
                                        "argument": {
                                          "type": "Identifier",
                                          "start": 10217,
                                          "end": 10222,
                                          "loc": {
                                            "start": {
                                              "line": 266,
                                              "column": 83
                                            },
                                            "end": {
                                              "line": 266,
                                              "column": 88
                                            }
                                          },
                                          "name": "coeff"
                                        }
                                      }
                                    ]
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 10224,
                                    "end": 10227,
                                    "loc": {
                                      "start": {
                                        "line": 266,
                                        "column": 90
                                      },
                                      "end": {
                                        "line": 266,
                                        "column": 93
                                      }
                                    },
                                    "name": "sub"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "CallExpression",
                                    "start": 10228,
                                    "end": 10252,
                                    "loc": {
                                      "start": {
                                        "line": 266,
                                        "column": 94
                                      },
                                      "end": {
                                        "line": 266,
                                        "column": 118
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 10228,
                                      "end": 10250,
                                      "loc": {
                                        "start": {
                                          "line": 266,
                                          "column": 94
                                        },
                                        "end": {
                                          "line": 266,
                                          "column": 116
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 10228,
                                        "end": 10232,
                                        "loc": {
                                          "start": {
                                            "line": 266,
                                            "column": 94
                                          },
                                          "end": {
                                            "line": 266,
                                            "column": 98
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 10233,
                                        "end": 10250,
                                        "loc": {
                                          "start": {
                                            "line": 266,
                                            "column": 99
                                          },
                                          "end": {
                                            "line": 266,
                                            "column": 116
                                          }
                                        },
                                        "name": "getMiddlePosition"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                ]
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 10265,
                      "end": 10301,
                      "loc": {
                        "start": {
                          "line": 267,
                          "column": 8
                        },
                        "end": {
                          "line": 267,
                          "column": 44
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 10269,
                          "end": 10300,
                          "loc": {
                            "start": {
                              "line": 267,
                              "column": 12
                            },
                            "end": {
                              "line": 267,
                              "column": 43
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 10269,
                            "end": 10277,
                            "loc": {
                              "start": {
                                "line": 267,
                                "column": 12
                              },
                              "end": {
                                "line": 267,
                                "column": 20
                              }
                            },
                            "name": "geometry"
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 10280,
                            "end": 10300,
                            "loc": {
                              "start": {
                                "line": 267,
                                "column": 23
                              },
                              "end": {
                                "line": 267,
                                "column": 43
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 10284,
                              "end": 10298,
                              "loc": {
                                "start": {
                                  "line": 267,
                                  "column": 27
                                },
                                "end": {
                                  "line": 267,
                                  "column": 41
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 10284,
                                "end": 10289,
                                "loc": {
                                  "start": {
                                    "line": 267,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 267,
                                    "column": 32
                                  }
                                },
                                "name": "THREE"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 10290,
                                "end": 10298,
                                "loc": {
                                  "start": {
                                    "line": 267,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 267,
                                    "column": 41
                                  }
                                },
                                "name": "Geometry"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 10311,
                      "end": 10341,
                      "loc": {
                        "start": {
                          "line": 268,
                          "column": 8
                        },
                        "end": {
                          "line": 268,
                          "column": 38
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 10311,
                        "end": 10340,
                        "loc": {
                          "start": {
                            "line": 268,
                            "column": 8
                          },
                          "end": {
                            "line": 268,
                            "column": 37
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 10311,
                          "end": 10333,
                          "loc": {
                            "start": {
                              "line": 268,
                              "column": 8
                            },
                            "end": {
                              "line": 268,
                              "column": 30
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 10311,
                            "end": 10328,
                            "loc": {
                              "start": {
                                "line": 268,
                                "column": 8
                              },
                              "end": {
                                "line": 268,
                                "column": 25
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 10311,
                              "end": 10319,
                              "loc": {
                                "start": {
                                  "line": 268,
                                  "column": 8
                                },
                                "end": {
                                  "line": 268,
                                  "column": 16
                                }
                              },
                              "name": "geometry"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 10320,
                              "end": 10328,
                              "loc": {
                                "start": {
                                  "line": 268,
                                  "column": 17
                                },
                                "end": {
                                  "line": 268,
                                  "column": 25
                                }
                              },
                              "name": "vertices"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 10329,
                            "end": 10333,
                            "loc": {
                              "start": {
                                "line": 268,
                                "column": 26
                              },
                              "end": {
                                "line": 268,
                                "column": 30
                              }
                            },
                            "name": "push"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 10334,
                            "end": 10335,
                            "loc": {
                              "start": {
                                "line": 268,
                                "column": 31
                              },
                              "end": {
                                "line": 268,
                                "column": 32
                              }
                            },
                            "name": "a"
                          },
                          {
                            "type": "Identifier",
                            "start": 10338,
                            "end": 10339,
                            "loc": {
                              "start": {
                                "line": 268,
                                "column": 35
                              },
                              "end": {
                                "line": 268,
                                "column": 36
                              }
                            },
                            "name": "b"
                          }
                        ]
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 10351,
                      "end": 10367,
                      "loc": {
                        "start": {
                          "line": 269,
                          "column": 8
                        },
                        "end": {
                          "line": 269,
                          "column": 24
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 10358,
                        "end": 10366,
                        "loc": {
                          "start": {
                            "line": 269,
                            "column": 15
                          },
                          "end": {
                            "line": 269,
                            "column": 23
                          }
                        },
                        "name": "geometry"
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 10382,
              "end": 11072,
              "loc": {
                "start": {
                  "line": 272,
                  "column": 4
                },
                "end": {
                  "line": 283,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 10382,
                "end": 10405,
                "loc": {
                  "start": {
                    "line": 272,
                    "column": 4
                  },
                  "end": {
                    "line": 272,
                    "column": 27
                  }
                },
                "name": "updateAuxiliaryGeometry"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 10405,
                "end": 11072,
                "loc": {
                  "start": {
                    "line": 272,
                    "column": 27
                  },
                  "end": {
                    "line": 283,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 10408,
                  "end": 11072,
                  "loc": {
                    "start": {
                      "line": 272,
                      "column": 30
                    },
                    "end": {
                      "line": 283,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 10419,
                      "end": 10505,
                      "loc": {
                        "start": {
                          "line": 273,
                          "column": 8
                        },
                        "end": {
                          "line": 273,
                          "column": 94
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 10423,
                          "end": 10504,
                          "loc": {
                            "start": {
                              "line": 273,
                              "column": 12
                            },
                            "end": {
                              "line": 273,
                              "column": 93
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 10423,
                            "end": 10429,
                            "loc": {
                              "start": {
                                "line": 273,
                                "column": 12
                              },
                              "end": {
                                "line": 273,
                                "column": 18
                              }
                            },
                            "name": "normal"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 10432,
                            "end": 10504,
                            "loc": {
                              "start": {
                                "line": 273,
                                "column": 21
                              },
                              "end": {
                                "line": 273,
                                "column": 93
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 10432,
                              "end": 10502,
                              "loc": {
                                "start": {
                                  "line": 273,
                                  "column": 21
                                },
                                "end": {
                                  "line": 273,
                                  "column": 91
                                }
                              },
                              "object": {
                                "type": "CallExpression",
                                "start": 10432,
                                "end": 10492,
                                "loc": {
                                  "start": {
                                    "line": 273,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 273,
                                    "column": 81
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 10432,
                                  "end": 10467,
                                  "loc": {
                                    "start": {
                                      "line": 273,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 273,
                                      "column": 56
                                    }
                                  },
                                  "object": {
                                    "type": "CallExpression",
                                    "start": 10432,
                                    "end": 10463,
                                    "loc": {
                                      "start": {
                                        "line": 273,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 273,
                                        "column": 52
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 10432,
                                      "end": 10461,
                                      "loc": {
                                        "start": {
                                          "line": 273,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 273,
                                          "column": 50
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 10432,
                                        "end": 10455,
                                        "loc": {
                                          "start": {
                                            "line": 273,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 273,
                                            "column": 44
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 10432,
                                          "end": 10446,
                                          "loc": {
                                            "start": {
                                              "line": 273,
                                              "column": 21
                                            },
                                            "end": {
                                              "line": 273,
                                              "column": 35
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 10432,
                                            "end": 10443,
                                            "loc": {
                                              "start": {
                                                "line": 273,
                                                "column": 21
                                              },
                                              "end": {
                                                "line": 273,
                                                "column": 32
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 10432,
                                              "end": 10436,
                                              "loc": {
                                                "start": {
                                                  "line": 273,
                                                  "column": 21
                                                },
                                                "end": {
                                                  "line": 273,
                                                  "column": 25
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 10437,
                                              "end": 10443,
                                              "loc": {
                                                "start": {
                                                  "line": 273,
                                                  "column": 26
                                                },
                                                "end": {
                                                  "line": 273,
                                                  "column": 32
                                                }
                                              },
                                              "name": "points"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Literal",
                                            "start": 10444,
                                            "end": 10445,
                                            "loc": {
                                              "start": {
                                                "line": 273,
                                                "column": 33
                                              },
                                              "end": {
                                                "line": 273,
                                                "column": 34
                                              }
                                            },
                                            "value": 1,
                                            "rawValue": 1,
                                            "raw": "1"
                                          },
                                          "computed": true
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 10447,
                                          "end": 10455,
                                          "loc": {
                                            "start": {
                                              "line": 273,
                                              "column": 36
                                            },
                                            "end": {
                                              "line": 273,
                                              "column": 44
                                            }
                                          },
                                          "name": "position"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 10456,
                                        "end": 10461,
                                        "loc": {
                                          "start": {
                                            "line": 273,
                                            "column": 45
                                          },
                                          "end": {
                                            "line": 273,
                                            "column": 50
                                          }
                                        },
                                        "name": "clone"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 10464,
                                    "end": 10467,
                                    "loc": {
                                      "start": {
                                        "line": 273,
                                        "column": 53
                                      },
                                      "end": {
                                        "line": 273,
                                        "column": 56
                                      }
                                    },
                                    "name": "sub"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "MemberExpression",
                                    "start": 10468,
                                    "end": 10491,
                                    "loc": {
                                      "start": {
                                        "line": 273,
                                        "column": 57
                                      },
                                      "end": {
                                        "line": 273,
                                        "column": 80
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 10468,
                                      "end": 10482,
                                      "loc": {
                                        "start": {
                                          "line": 273,
                                          "column": 57
                                        },
                                        "end": {
                                          "line": 273,
                                          "column": 71
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 10468,
                                        "end": 10479,
                                        "loc": {
                                          "start": {
                                            "line": 273,
                                            "column": 57
                                          },
                                          "end": {
                                            "line": 273,
                                            "column": 68
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 10468,
                                          "end": 10472,
                                          "loc": {
                                            "start": {
                                              "line": 273,
                                              "column": 57
                                            },
                                            "end": {
                                              "line": 273,
                                              "column": 61
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 10473,
                                          "end": 10479,
                                          "loc": {
                                            "start": {
                                              "line": 273,
                                              "column": 62
                                            },
                                            "end": {
                                              "line": 273,
                                              "column": 68
                                            }
                                          },
                                          "name": "points"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Literal",
                                        "start": 10480,
                                        "end": 10481,
                                        "loc": {
                                          "start": {
                                            "line": 273,
                                            "column": 69
                                          },
                                          "end": {
                                            "line": 273,
                                            "column": 70
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      "computed": true
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 10483,
                                      "end": 10491,
                                      "loc": {
                                        "start": {
                                          "line": 273,
                                          "column": 72
                                        },
                                        "end": {
                                          "line": 273,
                                          "column": 80
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  }
                                ]
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 10493,
                                "end": 10502,
                                "loc": {
                                  "start": {
                                    "line": 273,
                                    "column": 82
                                  },
                                  "end": {
                                    "line": 273,
                                    "column": 91
                                  }
                                },
                                "name": "normalize"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 10515,
                      "end": 10558,
                      "loc": {
                        "start": {
                          "line": 274,
                          "column": 8
                        },
                        "end": {
                          "line": 274,
                          "column": 51
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 10519,
                          "end": 10557,
                          "loc": {
                            "start": {
                              "line": 274,
                              "column": 12
                            },
                            "end": {
                              "line": 274,
                              "column": 50
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 10519,
                            "end": 10524,
                            "loc": {
                              "start": {
                                "line": 274,
                                "column": 12
                              },
                              "end": {
                                "line": 274,
                                "column": 17
                              }
                            },
                            "name": "coeff"
                          },
                          "init": {
                            "type": "BinaryExpression",
                            "start": 10527,
                            "end": 10557,
                            "loc": {
                              "start": {
                                "line": 274,
                                "column": 20
                              },
                              "end": {
                                "line": 274,
                                "column": 50
                              }
                            },
                            "left": {
                              "type": "Literal",
                              "start": 10527,
                              "end": 10532,
                              "loc": {
                                "start": {
                                  "line": 274,
                                  "column": 20
                                },
                                "end": {
                                  "line": 274,
                                  "column": 25
                                }
                              },
                              "value": 10000,
                              "rawValue": 10000,
                              "raw": "10000"
                            },
                            "operator": "*",
                            "right": {
                              "type": "MemberExpression",
                              "start": 10535,
                              "end": 10557,
                              "loc": {
                                "start": {
                                  "line": 274,
                                  "column": 28
                                },
                                "end": {
                                  "line": 274,
                                  "column": 50
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 10535,
                                "end": 10555,
                                "loc": {
                                  "start": {
                                    "line": 274,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 274,
                                    "column": 48
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 10535,
                                  "end": 10549,
                                  "loc": {
                                    "start": {
                                      "line": 274,
                                      "column": 28
                                    },
                                    "end": {
                                      "line": 274,
                                      "column": 42
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 10535,
                                    "end": 10546,
                                    "loc": {
                                      "start": {
                                        "line": 274,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 274,
                                        "column": 39
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 10535,
                                      "end": 10539,
                                      "loc": {
                                        "start": {
                                          "line": 274,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 274,
                                          "column": 32
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 10540,
                                      "end": 10546,
                                      "loc": {
                                        "start": {
                                          "line": 274,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 274,
                                          "column": 39
                                        }
                                      },
                                      "name": "points"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Literal",
                                    "start": 10547,
                                    "end": 10548,
                                    "loc": {
                                      "start": {
                                        "line": 274,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 274,
                                        "column": 41
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 10550,
                                  "end": 10555,
                                  "loc": {
                                    "start": {
                                      "line": 274,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 274,
                                      "column": 48
                                    }
                                  },
                                  "name": "scale"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 10556,
                                "end": 10557,
                                "loc": {
                                  "start": {
                                    "line": 274,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 274,
                                    "column": 50
                                  }
                                },
                                "name": "x"
                              },
                              "computed": false
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 10568,
                      "end": 10680,
                      "loc": {
                        "start": {
                          "line": 275,
                          "column": 8
                        },
                        "end": {
                          "line": 275,
                          "column": 120
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 10572,
                          "end": 10679,
                          "loc": {
                            "start": {
                              "line": 275,
                              "column": 12
                            },
                            "end": {
                              "line": 275,
                              "column": 119
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 10572,
                            "end": 10573,
                            "loc": {
                              "start": {
                                "line": 275,
                                "column": 12
                              },
                              "end": {
                                "line": 275,
                                "column": 13
                              }
                            },
                            "name": "a"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 10576,
                            "end": 10679,
                            "loc": {
                              "start": {
                                "line": 275,
                                "column": 16
                              },
                              "end": {
                                "line": 275,
                                "column": 119
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 10576,
                              "end": 10611,
                              "loc": {
                                "start": {
                                  "line": 275,
                                  "column": 16
                                },
                                "end": {
                                  "line": 275,
                                  "column": 51
                                }
                              },
                              "object": {
                                "type": "CallExpression",
                                "start": 10576,
                                "end": 10607,
                                "loc": {
                                  "start": {
                                    "line": 275,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 275,
                                    "column": 47
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 10576,
                                  "end": 10605,
                                  "loc": {
                                    "start": {
                                      "line": 275,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 275,
                                      "column": 45
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 10576,
                                    "end": 10599,
                                    "loc": {
                                      "start": {
                                        "line": 275,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 275,
                                        "column": 39
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 10576,
                                      "end": 10590,
                                      "loc": {
                                        "start": {
                                          "line": 275,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 275,
                                          "column": 30
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 10576,
                                        "end": 10587,
                                        "loc": {
                                          "start": {
                                            "line": 275,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 275,
                                            "column": 27
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 10576,
                                          "end": 10580,
                                          "loc": {
                                            "start": {
                                              "line": 275,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 275,
                                              "column": 20
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 10581,
                                          "end": 10587,
                                          "loc": {
                                            "start": {
                                              "line": 275,
                                              "column": 21
                                            },
                                            "end": {
                                              "line": 275,
                                              "column": 27
                                            }
                                          },
                                          "name": "points"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Literal",
                                        "start": 10588,
                                        "end": 10589,
                                        "loc": {
                                          "start": {
                                            "line": 275,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 275,
                                            "column": 29
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      "computed": true
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 10591,
                                      "end": 10599,
                                      "loc": {
                                        "start": {
                                          "line": 275,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 275,
                                          "column": 39
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 10600,
                                    "end": 10605,
                                    "loc": {
                                      "start": {
                                        "line": 275,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 275,
                                        "column": 45
                                      }
                                    },
                                    "name": "clone"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 10608,
                                "end": 10611,
                                "loc": {
                                  "start": {
                                    "line": 275,
                                    "column": 48
                                  },
                                  "end": {
                                    "line": 275,
                                    "column": 51
                                  }
                                },
                                "name": "add"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "CallExpression",
                                "start": 10612,
                                "end": 10678,
                                "loc": {
                                  "start": {
                                    "line": 275,
                                    "column": 52
                                  },
                                  "end": {
                                    "line": 275,
                                    "column": 118
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 10612,
                                  "end": 10652,
                                  "loc": {
                                    "start": {
                                      "line": 275,
                                      "column": 52
                                    },
                                    "end": {
                                      "line": 275,
                                      "column": 92
                                    }
                                  },
                                  "object": {
                                    "type": "CallExpression",
                                    "start": 10612,
                                    "end": 10648,
                                    "loc": {
                                      "start": {
                                        "line": 275,
                                        "column": 52
                                      },
                                      "end": {
                                        "line": 275,
                                        "column": 88
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 10612,
                                      "end": 10641,
                                      "loc": {
                                        "start": {
                                          "line": 275,
                                          "column": 52
                                        },
                                        "end": {
                                          "line": 275,
                                          "column": 81
                                        }
                                      },
                                      "object": {
                                        "type": "CallExpression",
                                        "start": 10612,
                                        "end": 10626,
                                        "loc": {
                                          "start": {
                                            "line": 275,
                                            "column": 52
                                          },
                                          "end": {
                                            "line": 275,
                                            "column": 66
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 10612,
                                          "end": 10624,
                                          "loc": {
                                            "start": {
                                              "line": 275,
                                              "column": 52
                                            },
                                            "end": {
                                              "line": 275,
                                              "column": 64
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 10612,
                                            "end": 10618,
                                            "loc": {
                                              "start": {
                                                "line": 275,
                                                "column": 52
                                              },
                                              "end": {
                                                "line": 275,
                                                "column": 58
                                              }
                                            },
                                            "name": "normal"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 10619,
                                            "end": 10624,
                                            "loc": {
                                              "start": {
                                                "line": 275,
                                                "column": 59
                                              },
                                              "end": {
                                                "line": 275,
                                                "column": 64
                                              }
                                            },
                                            "name": "clone"
                                          },
                                          "computed": false
                                        },
                                        "arguments": []
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 10627,
                                        "end": 10641,
                                        "loc": {
                                          "start": {
                                            "line": 275,
                                            "column": 67
                                          },
                                          "end": {
                                            "line": 275,
                                            "column": 81
                                          }
                                        },
                                        "name": "multiplyScalar"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 10642,
                                        "end": 10647,
                                        "loc": {
                                          "start": {
                                            "line": 275,
                                            "column": 82
                                          },
                                          "end": {
                                            "line": 275,
                                            "column": 87
                                          }
                                        },
                                        "name": "coeff"
                                      }
                                    ]
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 10649,
                                    "end": 10652,
                                    "loc": {
                                      "start": {
                                        "line": 275,
                                        "column": 89
                                      },
                                      "end": {
                                        "line": 275,
                                        "column": 92
                                      }
                                    },
                                    "name": "sub"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "CallExpression",
                                    "start": 10653,
                                    "end": 10677,
                                    "loc": {
                                      "start": {
                                        "line": 275,
                                        "column": 93
                                      },
                                      "end": {
                                        "line": 275,
                                        "column": 117
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 10653,
                                      "end": 10675,
                                      "loc": {
                                        "start": {
                                          "line": 275,
                                          "column": 93
                                        },
                                        "end": {
                                          "line": 275,
                                          "column": 115
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 10653,
                                        "end": 10657,
                                        "loc": {
                                          "start": {
                                            "line": 275,
                                            "column": 93
                                          },
                                          "end": {
                                            "line": 275,
                                            "column": 97
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 10658,
                                        "end": 10675,
                                        "loc": {
                                          "start": {
                                            "line": 275,
                                            "column": 98
                                          },
                                          "end": {
                                            "line": 275,
                                            "column": 115
                                          }
                                        },
                                        "name": "getMiddlePosition"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                ]
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 10690,
                      "end": 10803,
                      "loc": {
                        "start": {
                          "line": 276,
                          "column": 8
                        },
                        "end": {
                          "line": 276,
                          "column": 121
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 10694,
                          "end": 10802,
                          "loc": {
                            "start": {
                              "line": 276,
                              "column": 12
                            },
                            "end": {
                              "line": 276,
                              "column": 120
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 10694,
                            "end": 10695,
                            "loc": {
                              "start": {
                                "line": 276,
                                "column": 12
                              },
                              "end": {
                                "line": 276,
                                "column": 13
                              }
                            },
                            "name": "b"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 10698,
                            "end": 10802,
                            "loc": {
                              "start": {
                                "line": 276,
                                "column": 16
                              },
                              "end": {
                                "line": 276,
                                "column": 120
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 10698,
                              "end": 10733,
                              "loc": {
                                "start": {
                                  "line": 276,
                                  "column": 16
                                },
                                "end": {
                                  "line": 276,
                                  "column": 51
                                }
                              },
                              "object": {
                                "type": "CallExpression",
                                "start": 10698,
                                "end": 10729,
                                "loc": {
                                  "start": {
                                    "line": 276,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 276,
                                    "column": 47
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 10698,
                                  "end": 10727,
                                  "loc": {
                                    "start": {
                                      "line": 276,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 276,
                                      "column": 45
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 10698,
                                    "end": 10721,
                                    "loc": {
                                      "start": {
                                        "line": 276,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 276,
                                        "column": 39
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 10698,
                                      "end": 10712,
                                      "loc": {
                                        "start": {
                                          "line": 276,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 276,
                                          "column": 30
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 10698,
                                        "end": 10709,
                                        "loc": {
                                          "start": {
                                            "line": 276,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 276,
                                            "column": 27
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 10698,
                                          "end": 10702,
                                          "loc": {
                                            "start": {
                                              "line": 276,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 276,
                                              "column": 20
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 10703,
                                          "end": 10709,
                                          "loc": {
                                            "start": {
                                              "line": 276,
                                              "column": 21
                                            },
                                            "end": {
                                              "line": 276,
                                              "column": 27
                                            }
                                          },
                                          "name": "points"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Literal",
                                        "start": 10710,
                                        "end": 10711,
                                        "loc": {
                                          "start": {
                                            "line": 276,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 276,
                                            "column": 29
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      "computed": true
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 10713,
                                      "end": 10721,
                                      "loc": {
                                        "start": {
                                          "line": 276,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 276,
                                          "column": 39
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 10722,
                                    "end": 10727,
                                    "loc": {
                                      "start": {
                                        "line": 276,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 276,
                                        "column": 45
                                      }
                                    },
                                    "name": "clone"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 10730,
                                "end": 10733,
                                "loc": {
                                  "start": {
                                    "line": 276,
                                    "column": 48
                                  },
                                  "end": {
                                    "line": 276,
                                    "column": 51
                                  }
                                },
                                "name": "add"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "CallExpression",
                                "start": 10734,
                                "end": 10801,
                                "loc": {
                                  "start": {
                                    "line": 276,
                                    "column": 52
                                  },
                                  "end": {
                                    "line": 276,
                                    "column": 119
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 10734,
                                  "end": 10775,
                                  "loc": {
                                    "start": {
                                      "line": 276,
                                      "column": 52
                                    },
                                    "end": {
                                      "line": 276,
                                      "column": 93
                                    }
                                  },
                                  "object": {
                                    "type": "CallExpression",
                                    "start": 10734,
                                    "end": 10771,
                                    "loc": {
                                      "start": {
                                        "line": 276,
                                        "column": 52
                                      },
                                      "end": {
                                        "line": 276,
                                        "column": 89
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 10734,
                                      "end": 10763,
                                      "loc": {
                                        "start": {
                                          "line": 276,
                                          "column": 52
                                        },
                                        "end": {
                                          "line": 276,
                                          "column": 81
                                        }
                                      },
                                      "object": {
                                        "type": "CallExpression",
                                        "start": 10734,
                                        "end": 10748,
                                        "loc": {
                                          "start": {
                                            "line": 276,
                                            "column": 52
                                          },
                                          "end": {
                                            "line": 276,
                                            "column": 66
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 10734,
                                          "end": 10746,
                                          "loc": {
                                            "start": {
                                              "line": 276,
                                              "column": 52
                                            },
                                            "end": {
                                              "line": 276,
                                              "column": 64
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 10734,
                                            "end": 10740,
                                            "loc": {
                                              "start": {
                                                "line": 276,
                                                "column": 52
                                              },
                                              "end": {
                                                "line": 276,
                                                "column": 58
                                              }
                                            },
                                            "name": "normal"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 10741,
                                            "end": 10746,
                                            "loc": {
                                              "start": {
                                                "line": 276,
                                                "column": 59
                                              },
                                              "end": {
                                                "line": 276,
                                                "column": 64
                                              }
                                            },
                                            "name": "clone"
                                          },
                                          "computed": false
                                        },
                                        "arguments": []
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 10749,
                                        "end": 10763,
                                        "loc": {
                                          "start": {
                                            "line": 276,
                                            "column": 67
                                          },
                                          "end": {
                                            "line": 276,
                                            "column": 81
                                          }
                                        },
                                        "name": "multiplyScalar"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "UnaryExpression",
                                        "start": 10764,
                                        "end": 10770,
                                        "loc": {
                                          "start": {
                                            "line": 276,
                                            "column": 82
                                          },
                                          "end": {
                                            "line": 276,
                                            "column": 88
                                          }
                                        },
                                        "operator": "-",
                                        "prefix": true,
                                        "argument": {
                                          "type": "Identifier",
                                          "start": 10765,
                                          "end": 10770,
                                          "loc": {
                                            "start": {
                                              "line": 276,
                                              "column": 83
                                            },
                                            "end": {
                                              "line": 276,
                                              "column": 88
                                            }
                                          },
                                          "name": "coeff"
                                        }
                                      }
                                    ]
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 10772,
                                    "end": 10775,
                                    "loc": {
                                      "start": {
                                        "line": 276,
                                        "column": 90
                                      },
                                      "end": {
                                        "line": 276,
                                        "column": 93
                                      }
                                    },
                                    "name": "sub"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "CallExpression",
                                    "start": 10776,
                                    "end": 10800,
                                    "loc": {
                                      "start": {
                                        "line": 276,
                                        "column": 94
                                      },
                                      "end": {
                                        "line": 276,
                                        "column": 118
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 10776,
                                      "end": 10798,
                                      "loc": {
                                        "start": {
                                          "line": 276,
                                          "column": 94
                                        },
                                        "end": {
                                          "line": 276,
                                          "column": 116
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 10776,
                                        "end": 10780,
                                        "loc": {
                                          "start": {
                                            "line": 276,
                                            "column": 94
                                          },
                                          "end": {
                                            "line": 276,
                                            "column": 98
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 10781,
                                        "end": 10798,
                                        "loc": {
                                          "start": {
                                            "line": 276,
                                            "column": 99
                                          },
                                          "end": {
                                            "line": 276,
                                            "column": 116
                                          }
                                        },
                                        "name": "getMiddlePosition"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                ]
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 10815,
                      "end": 10880,
                      "loc": {
                        "start": {
                          "line": 278,
                          "column": 8
                        },
                        "end": {
                          "line": 278,
                          "column": 73
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 10815,
                        "end": 10879,
                        "loc": {
                          "start": {
                            "line": 278,
                            "column": 8
                          },
                          "end": {
                            "line": 278,
                            "column": 72
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 10815,
                          "end": 10855,
                          "loc": {
                            "start": {
                              "line": 278,
                              "column": 8
                            },
                            "end": {
                              "line": 278,
                              "column": 48
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 10815,
                            "end": 10850,
                            "loc": {
                              "start": {
                                "line": 278,
                                "column": 8
                              },
                              "end": {
                                "line": 278,
                                "column": 43
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 10815,
                              "end": 10841,
                              "loc": {
                                "start": {
                                  "line": 278,
                                  "column": 8
                                },
                                "end": {
                                  "line": 278,
                                  "column": 34
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 10815,
                                "end": 10819,
                                "loc": {
                                  "start": {
                                    "line": 278,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 278,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 10820,
                                "end": 10841,
                                "loc": {
                                  "start": {
                                    "line": 278,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 278,
                                    "column": 34
                                  }
                                },
                                "name": "auxiliaryConstruction"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 10842,
                              "end": 10850,
                              "loc": {
                                "start": {
                                  "line": 278,
                                  "column": 35
                                },
                                "end": {
                                  "line": 278,
                                  "column": 43
                                }
                              },
                              "name": "position"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 10851,
                            "end": 10855,
                            "loc": {
                              "start": {
                                "line": 278,
                                "column": 44
                              },
                              "end": {
                                "line": 278,
                                "column": 48
                              }
                            },
                            "name": "copy"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 10856,
                            "end": 10878,
                            "loc": {
                              "start": {
                                "line": 278,
                                "column": 49
                              },
                              "end": {
                                "line": 278,
                                "column": 71
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 10856,
                              "end": 10869,
                              "loc": {
                                "start": {
                                  "line": 278,
                                  "column": 49
                                },
                                "end": {
                                  "line": 278,
                                  "column": 62
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 10856,
                                "end": 10860,
                                "loc": {
                                  "start": {
                                    "line": 278,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 278,
                                    "column": 53
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 10861,
                                "end": 10869,
                                "loc": {
                                  "start": {
                                    "line": 278,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 278,
                                    "column": 62
                                  }
                                },
                                "name": "interact"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 10870,
                              "end": 10878,
                              "loc": {
                                "start": {
                                  "line": 278,
                                  "column": 63
                                },
                                "end": {
                                  "line": 278,
                                  "column": 71
                                }
                              },
                              "name": "position"
                            },
                            "computed": false
                          }
                        ]
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 10890,
                      "end": 10941,
                      "loc": {
                        "start": {
                          "line": 279,
                          "column": 8
                        },
                        "end": {
                          "line": 279,
                          "column": 59
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 10894,
                          "end": 10940,
                          "loc": {
                            "start": {
                              "line": 279,
                              "column": 12
                            },
                            "end": {
                              "line": 279,
                              "column": 58
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 10894,
                            "end": 10902,
                            "loc": {
                              "start": {
                                "line": 279,
                                "column": 12
                              },
                              "end": {
                                "line": 279,
                                "column": 20
                              }
                            },
                            "name": "geometry"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 10905,
                            "end": 10940,
                            "loc": {
                              "start": {
                                "line": 279,
                                "column": 23
                              },
                              "end": {
                                "line": 279,
                                "column": 58
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 10905,
                              "end": 10931,
                              "loc": {
                                "start": {
                                  "line": 279,
                                  "column": 23
                                },
                                "end": {
                                  "line": 279,
                                  "column": 49
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 10905,
                                "end": 10909,
                                "loc": {
                                  "start": {
                                    "line": 279,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 279,
                                    "column": 27
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 10910,
                                "end": 10931,
                                "loc": {
                                  "start": {
                                    "line": 279,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 279,
                                    "column": 49
                                  }
                                },
                                "name": "auxiliaryConstruction"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 10932,
                              "end": 10940,
                              "loc": {
                                "start": {
                                  "line": 279,
                                  "column": 50
                                },
                                "end": {
                                  "line": 279,
                                  "column": 58
                                }
                              },
                              "name": "geometry"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 10951,
                      "end": 10980,
                      "loc": {
                        "start": {
                          "line": 280,
                          "column": 8
                        },
                        "end": {
                          "line": 280,
                          "column": 37
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 10951,
                        "end": 10979,
                        "loc": {
                          "start": {
                            "line": 280,
                            "column": 8
                          },
                          "end": {
                            "line": 280,
                            "column": 36
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 10951,
                          "end": 10975,
                          "loc": {
                            "start": {
                              "line": 280,
                              "column": 8
                            },
                            "end": {
                              "line": 280,
                              "column": 32
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 10951,
                            "end": 10968,
                            "loc": {
                              "start": {
                                "line": 280,
                                "column": 8
                              },
                              "end": {
                                "line": 280,
                                "column": 25
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 10951,
                              "end": 10959,
                              "loc": {
                                "start": {
                                  "line": 280,
                                  "column": 8
                                },
                                "end": {
                                  "line": 280,
                                  "column": 16
                                }
                              },
                              "name": "geometry"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 10960,
                              "end": 10968,
                              "loc": {
                                "start": {
                                  "line": 280,
                                  "column": 17
                                },
                                "end": {
                                  "line": 280,
                                  "column": 25
                                }
                              },
                              "name": "vertices"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 10969,
                            "end": 10975,
                            "loc": {
                              "start": {
                                "line": 280,
                                "column": 26
                              },
                              "end": {
                                "line": 280,
                                "column": 32
                              }
                            },
                            "name": "length"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 10978,
                          "end": 10979,
                          "loc": {
                            "start": {
                              "line": 280,
                              "column": 35
                            },
                            "end": {
                              "line": 280,
                              "column": 36
                            }
                          },
                          "value": 0,
                          "rawValue": 0,
                          "raw": "0"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 10990,
                      "end": 11020,
                      "loc": {
                        "start": {
                          "line": 281,
                          "column": 8
                        },
                        "end": {
                          "line": 281,
                          "column": 38
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 10990,
                        "end": 11019,
                        "loc": {
                          "start": {
                            "line": 281,
                            "column": 8
                          },
                          "end": {
                            "line": 281,
                            "column": 37
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 10990,
                          "end": 11012,
                          "loc": {
                            "start": {
                              "line": 281,
                              "column": 8
                            },
                            "end": {
                              "line": 281,
                              "column": 30
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 10990,
                            "end": 11007,
                            "loc": {
                              "start": {
                                "line": 281,
                                "column": 8
                              },
                              "end": {
                                "line": 281,
                                "column": 25
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 10990,
                              "end": 10998,
                              "loc": {
                                "start": {
                                  "line": 281,
                                  "column": 8
                                },
                                "end": {
                                  "line": 281,
                                  "column": 16
                                }
                              },
                              "name": "geometry"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 10999,
                              "end": 11007,
                              "loc": {
                                "start": {
                                  "line": 281,
                                  "column": 17
                                },
                                "end": {
                                  "line": 281,
                                  "column": 25
                                }
                              },
                              "name": "vertices"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11008,
                            "end": 11012,
                            "loc": {
                              "start": {
                                "line": 281,
                                "column": 26
                              },
                              "end": {
                                "line": 281,
                                "column": 30
                              }
                            },
                            "name": "push"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 11013,
                            "end": 11014,
                            "loc": {
                              "start": {
                                "line": 281,
                                "column": 31
                              },
                              "end": {
                                "line": 281,
                                "column": 32
                              }
                            },
                            "name": "a"
                          },
                          {
                            "type": "Identifier",
                            "start": 11017,
                            "end": 11018,
                            "loc": {
                              "start": {
                                "line": 281,
                                "column": 35
                              },
                              "end": {
                                "line": 281,
                                "column": 36
                              }
                            },
                            "name": "b"
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 11030,
                      "end": 11065,
                      "loc": {
                        "start": {
                          "line": 282,
                          "column": 8
                        },
                        "end": {
                          "line": 282,
                          "column": 43
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 11030,
                        "end": 11064,
                        "loc": {
                          "start": {
                            "line": 282,
                            "column": 8
                          },
                          "end": {
                            "line": 282,
                            "column": 42
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 11030,
                          "end": 11057,
                          "loc": {
                            "start": {
                              "line": 282,
                              "column": 8
                            },
                            "end": {
                              "line": 282,
                              "column": 35
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 11030,
                            "end": 11038,
                            "loc": {
                              "start": {
                                "line": 282,
                                "column": 8
                              },
                              "end": {
                                "line": 282,
                                "column": 16
                              }
                            },
                            "name": "geometry"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11039,
                            "end": 11057,
                            "loc": {
                              "start": {
                                "line": 282,
                                "column": 17
                              },
                              "end": {
                                "line": 282,
                                "column": 35
                              }
                            },
                            "name": "verticesNeedUpdate"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 11060,
                          "end": 11064,
                          "loc": {
                            "start": {
                              "line": 282,
                              "column": 38
                            },
                            "end": {
                              "line": 282,
                              "column": 42
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        }
                      }
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": "required methods for updateSizes",
                  "start": 11080,
                  "end": 11114,
                  "loc": {
                    "start": {
                      "line": 285,
                      "column": 4
                    },
                    "end": {
                      "line": 285,
                      "column": 38
                    }
                  },
                  "range": [
                    11080,
                    11114
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 11120,
              "end": 11187,
              "loc": {
                "start": {
                  "line": 286,
                  "column": 4
                },
                "end": {
                  "line": 288,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 11120,
                "end": 11134,
                "loc": {
                  "start": {
                    "line": 286,
                    "column": 4
                  },
                  "end": {
                    "line": 286,
                    "column": 18
                  }
                },
                "name": "getSizingPoint",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 11134,
                "end": 11187,
                "loc": {
                  "start": {
                    "line": 286,
                    "column": 18
                  },
                  "end": {
                    "line": 288,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 11137,
                  "end": 11187,
                  "loc": {
                    "start": {
                      "line": 286,
                      "column": 21
                    },
                    "end": {
                      "line": 288,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 11148,
                      "end": 11180,
                      "loc": {
                        "start": {
                          "line": 287,
                          "column": 8
                        },
                        "end": {
                          "line": 287,
                          "column": 40
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 11155,
                        "end": 11179,
                        "loc": {
                          "start": {
                            "line": 287,
                            "column": 15
                          },
                          "end": {
                            "line": 287,
                            "column": 39
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 11155,
                          "end": 11177,
                          "loc": {
                            "start": {
                              "line": 287,
                              "column": 15
                            },
                            "end": {
                              "line": 287,
                              "column": 37
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 11155,
                            "end": 11159,
                            "loc": {
                              "start": {
                                "line": 287,
                                "column": 15
                              },
                              "end": {
                                "line": 287,
                                "column": 19
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11160,
                            "end": 11177,
                            "loc": {
                              "start": {
                                "line": 287,
                                "column": 20
                              },
                              "end": {
                                "line": 287,
                                "column": 37
                              }
                            },
                            "name": "getMiddlePosition"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    }
                  ]
                }
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": "required methods for updateSizes",
                  "start": 11080,
                  "end": 11114,
                  "loc": {
                    "start": {
                      "line": 285,
                      "column": 4
                    },
                    "end": {
                      "line": 285,
                      "column": 38
                    }
                  },
                  "range": [
                    11080,
                    11114
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 11193,
              "end": 11365,
              "loc": {
                "start": {
                  "line": 289,
                  "column": 4
                },
                "end": {
                  "line": 293,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 11193,
                "end": 11205,
                "loc": {
                  "start": {
                    "line": 289,
                    "column": 4
                  },
                  "end": {
                    "line": 289,
                    "column": 16
                  }
                },
                "name": "setGeomSizes"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 11205,
                "end": 11365,
                "loc": {
                  "start": {
                    "line": 289,
                    "column": 16
                  },
                  "end": {
                    "line": 293,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 11206,
                    "end": 11211,
                    "loc": {
                      "start": {
                        "line": 289,
                        "column": 17
                      },
                      "end": {
                        "line": 289,
                        "column": 22
                      }
                    },
                    "name": "sizes"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 11213,
                  "end": 11365,
                  "loc": {
                    "start": {
                      "line": 289,
                      "column": 24
                    },
                    "end": {
                      "line": 293,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 11224,
                      "end": 11246,
                      "loc": {
                        "start": {
                          "line": 290,
                          "column": 8
                        },
                        "end": {
                          "line": 290,
                          "column": 30
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 11224,
                        "end": 11245,
                        "loc": {
                          "start": {
                            "line": 290,
                            "column": 8
                          },
                          "end": {
                            "line": 290,
                            "column": 29
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 11224,
                          "end": 11234,
                          "loc": {
                            "start": {
                              "line": 290,
                              "column": 8
                            },
                            "end": {
                              "line": 290,
                              "column": 18
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 11224,
                            "end": 11228,
                            "loc": {
                              "start": {
                                "line": 290,
                                "column": 8
                              },
                              "end": {
                                "line": 290,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11229,
                            "end": 11234,
                            "loc": {
                              "start": {
                                "line": 290,
                                "column": 13
                              },
                              "end": {
                                "line": 290,
                                "column": 18
                              }
                            },
                            "name": "width"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 11237,
                          "end": 11245,
                          "loc": {
                            "start": {
                              "line": 290,
                              "column": 21
                            },
                            "end": {
                              "line": 290,
                              "column": 29
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 11237,
                            "end": 11242,
                            "loc": {
                              "start": {
                                "line": 290,
                                "column": 21
                              },
                              "end": {
                                "line": 290,
                                "column": 26
                              }
                            },
                            "name": "sizes"
                          },
                          "property": {
                            "type": "Literal",
                            "start": 11243,
                            "end": 11244,
                            "loc": {
                              "start": {
                                "line": 290,
                                "column": 27
                              },
                              "end": {
                                "line": 290,
                                "column": 28
                              }
                            },
                            "value": 0,
                            "rawValue": 0,
                            "raw": "0"
                          },
                          "computed": true
                        }
                      }
                    },
                    {
                      "type": "IfStatement",
                      "start": 11256,
                      "end": 11358,
                      "loc": {
                        "start": {
                          "line": 291,
                          "column": 8
                        },
                        "end": {
                          "line": 292,
                          "column": 62
                        }
                      },
                      "test": {
                        "type": "MemberExpression",
                        "start": 11260,
                        "end": 11293,
                        "loc": {
                          "start": {
                            "line": 291,
                            "column": 12
                          },
                          "end": {
                            "line": 291,
                            "column": 45
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 11260,
                          "end": 11285,
                          "loc": {
                            "start": {
                              "line": 291,
                              "column": 12
                            },
                            "end": {
                              "line": 291,
                              "column": 37
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 11260,
                            "end": 11264,
                            "loc": {
                              "start": {
                                "line": 291,
                                "column": 12
                              },
                              "end": {
                                "line": 291,
                                "column": 16
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11265,
                            "end": 11285,
                            "loc": {
                              "start": {
                                "line": 291,
                                "column": 17
                              },
                              "end": {
                                "line": 291,
                                "column": 37
                              }
                            },
                            "name": "constraintsSubstrate"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 11286,
                          "end": 11293,
                          "loc": {
                            "start": {
                              "line": 291,
                              "column": 38
                            },
                            "end": {
                              "line": 291,
                              "column": 45
                            }
                          },
                          "name": "visible"
                        },
                        "computed": false
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 11308,
                        "end": 11358,
                        "loc": {
                          "start": {
                            "line": 292,
                            "column": 12
                          },
                          "end": {
                            "line": 292,
                            "column": 62
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 11308,
                          "end": 11357,
                          "loc": {
                            "start": {
                              "line": 292,
                              "column": 12
                            },
                            "end": {
                              "line": 292,
                              "column": 61
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 11308,
                            "end": 11351,
                            "loc": {
                              "start": {
                                "line": 292,
                                "column": 12
                              },
                              "end": {
                                "line": 292,
                                "column": 55
                              }
                            },
                            "object": {
                              "type": "CallExpression",
                              "start": 11308,
                              "end": 11333,
                              "loc": {
                                "start": {
                                  "line": 292,
                                  "column": 12
                                },
                                "end": {
                                  "line": 292,
                                  "column": 37
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 11308,
                                "end": 11327,
                                "loc": {
                                  "start": {
                                    "line": 292,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 292,
                                    "column": 31
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 11308,
                                  "end": 11314,
                                  "loc": {
                                    "start": {
                                      "line": 292,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 292,
                                      "column": 18
                                    }
                                  },
                                  "name": "Sketch"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 11315,
                                  "end": 11327,
                                  "loc": {
                                    "start": {
                                      "line": 292,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 292,
                                      "column": 31
                                    }
                                  },
                                  "name": "FindSketchOf"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ThisExpression",
                                  "start": 11328,
                                  "end": 11332,
                                  "loc": {
                                    "start": {
                                      "line": 292,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 292,
                                      "column": 36
                                    }
                                  }
                                }
                              ]
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11334,
                              "end": 11351,
                              "loc": {
                                "start": {
                                  "line": 292,
                                  "column": 38
                                },
                                "end": {
                                  "line": 292,
                                  "column": 55
                                }
                              },
                              "name": "updateConstraints"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "ThisExpression",
                              "start": 11352,
                              "end": 11356,
                              "loc": {
                                "start": {
                                  "line": 292,
                                  "column": 56
                                },
                                "end": {
                                  "line": 292,
                                  "column": 60
                                }
                              }
                            }
                          ]
                        }
                      },
                      "alternate": null
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 11373,
              "end": 11890,
              "loc": {
                "start": {
                  "line": 295,
                  "column": 4
                },
                "end": {
                  "line": 306,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 11373,
                "end": 11393,
                "loc": {
                  "start": {
                    "line": 295,
                    "column": 4
                  },
                  "end": {
                    "line": 295,
                    "column": 24
                  }
                },
                "name": "getSubstratePosition"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 11393,
                "end": 11890,
                "loc": {
                  "start": {
                    "line": 295,
                    "column": 24
                  },
                  "end": {
                    "line": 306,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 11394,
                    "end": 11397,
                    "loc": {
                      "start": {
                        "line": 295,
                        "column": 25
                      },
                      "end": {
                        "line": 295,
                        "column": 28
                      }
                    },
                    "name": "len"
                  },
                  {
                    "type": "Identifier",
                    "start": 11399,
                    "end": 11403,
                    "loc": {
                      "start": {
                        "line": 295,
                        "column": 30
                      },
                      "end": {
                        "line": 295,
                        "column": 34
                      }
                    },
                    "name": "size"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 11405,
                  "end": 11890,
                  "loc": {
                    "start": {
                      "line": 295,
                      "column": 36
                    },
                    "end": {
                      "line": 306,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 11416,
                      "end": 11441,
                      "loc": {
                        "start": {
                          "line": 296,
                          "column": 8
                        },
                        "end": {
                          "line": 296,
                          "column": 33
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 11420,
                          "end": 11440,
                          "loc": {
                            "start": {
                              "line": 296,
                              "column": 12
                            },
                            "end": {
                              "line": 296,
                              "column": 32
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 11420,
                            "end": 11421,
                            "loc": {
                              "start": {
                                "line": 296,
                                "column": 12
                              },
                              "end": {
                                "line": 296,
                                "column": 13
                              }
                            },
                            "name": "a"
                          },
                          "init": {
                            "type": "BinaryExpression",
                            "start": 11425,
                            "end": 11439,
                            "loc": {
                              "start": {
                                "line": 296,
                                "column": 17
                              },
                              "end": {
                                "line": 296,
                                "column": 31
                              }
                            },
                            "left": {
                              "type": "BinaryExpression",
                              "start": 11425,
                              "end": 11432,
                              "loc": {
                                "start": {
                                  "line": 296,
                                  "column": 17
                                },
                                "end": {
                                  "line": 296,
                                  "column": 24
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 11425,
                                "end": 11428,
                                "loc": {
                                  "start": {
                                    "line": 296,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 296,
                                    "column": 20
                                  }
                                },
                                "name": "len"
                              },
                              "operator": "/",
                              "right": {
                                "type": "Literal",
                                "start": 11431,
                                "end": 11432,
                                "loc": {
                                  "start": {
                                    "line": 296,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 296,
                                    "column": 24
                                  }
                                },
                                "value": 2,
                                "rawValue": 2,
                                "raw": "2"
                              }
                            },
                            "operator": "+",
                            "right": {
                              "type": "Identifier",
                              "start": 11435,
                              "end": 11439,
                              "loc": {
                                "start": {
                                  "line": 296,
                                  "column": 27
                                },
                                "end": {
                                  "line": 296,
                                  "column": 31
                                }
                              },
                              "name": "size"
                            },
                            "parenthesizedExpression": true
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 11451,
                      "end": 11477,
                      "loc": {
                        "start": {
                          "line": 297,
                          "column": 8
                        },
                        "end": {
                          "line": 297,
                          "column": 34
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 11455,
                          "end": 11476,
                          "loc": {
                            "start": {
                              "line": 297,
                              "column": 12
                            },
                            "end": {
                              "line": 297,
                              "column": 33
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 11455,
                            "end": 11456,
                            "loc": {
                              "start": {
                                "line": 297,
                                "column": 12
                              },
                              "end": {
                                "line": 297,
                                "column": 13
                              }
                            },
                            "name": "b"
                          },
                          "init": {
                            "type": "BinaryExpression",
                            "start": 11460,
                            "end": 11475,
                            "loc": {
                              "start": {
                                "line": 297,
                                "column": 17
                              },
                              "end": {
                                "line": 297,
                                "column": 32
                              }
                            },
                            "left": {
                              "type": "BinaryExpression",
                              "start": 11460,
                              "end": 11468,
                              "loc": {
                                "start": {
                                  "line": 297,
                                  "column": 17
                                },
                                "end": {
                                  "line": 297,
                                  "column": 25
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 11460,
                                "end": 11464,
                                "loc": {
                                  "start": {
                                    "line": 297,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 297,
                                    "column": 21
                                  }
                                },
                                "name": "size"
                              },
                              "operator": "/",
                              "right": {
                                "type": "Literal",
                                "start": 11467,
                                "end": 11468,
                                "loc": {
                                  "start": {
                                    "line": 297,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 297,
                                    "column": 25
                                  }
                                },
                                "value": 2,
                                "rawValue": 2,
                                "raw": "2"
                              }
                            },
                            "operator": "+",
                            "right": {
                              "type": "Identifier",
                              "start": 11471,
                              "end": 11475,
                              "loc": {
                                "start": {
                                  "line": 297,
                                  "column": 28
                                },
                                "end": {
                                  "line": 297,
                                  "column": 32
                                }
                              },
                              "name": "size"
                            },
                            "parenthesizedExpression": true
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 11489,
                      "end": 11563,
                      "loc": {
                        "start": {
                          "line": 299,
                          "column": 8
                        },
                        "end": {
                          "line": 299,
                          "column": 82
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 11493,
                          "end": 11562,
                          "loc": {
                            "start": {
                              "line": 299,
                              "column": 12
                            },
                            "end": {
                              "line": 299,
                              "column": 81
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 11493,
                            "end": 11499,
                            "loc": {
                              "start": {
                                "line": 299,
                                "column": 12
                              },
                              "end": {
                                "line": 299,
                                "column": 18
                              }
                            },
                            "name": "vector"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 11502,
                            "end": 11562,
                            "loc": {
                              "start": {
                                "line": 299,
                                "column": 21
                              },
                              "end": {
                                "line": 299,
                                "column": 81
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 11502,
                              "end": 11537,
                              "loc": {
                                "start": {
                                  "line": 299,
                                  "column": 21
                                },
                                "end": {
                                  "line": 299,
                                  "column": 56
                                }
                              },
                              "object": {
                                "type": "CallExpression",
                                "start": 11502,
                                "end": 11533,
                                "loc": {
                                  "start": {
                                    "line": 299,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 299,
                                    "column": 52
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 11502,
                                  "end": 11531,
                                  "loc": {
                                    "start": {
                                      "line": 299,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 299,
                                      "column": 50
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 11502,
                                    "end": 11525,
                                    "loc": {
                                      "start": {
                                        "line": 299,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 299,
                                        "column": 44
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 11502,
                                      "end": 11516,
                                      "loc": {
                                        "start": {
                                          "line": 299,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 299,
                                          "column": 35
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 11502,
                                        "end": 11513,
                                        "loc": {
                                          "start": {
                                            "line": 299,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 299,
                                            "column": 32
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 11502,
                                          "end": 11506,
                                          "loc": {
                                            "start": {
                                              "line": 299,
                                              "column": 21
                                            },
                                            "end": {
                                              "line": 299,
                                              "column": 25
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 11507,
                                          "end": 11513,
                                          "loc": {
                                            "start": {
                                              "line": 299,
                                              "column": 26
                                            },
                                            "end": {
                                              "line": 299,
                                              "column": 32
                                            }
                                          },
                                          "name": "points"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Literal",
                                        "start": 11514,
                                        "end": 11515,
                                        "loc": {
                                          "start": {
                                            "line": 299,
                                            "column": 33
                                          },
                                          "end": {
                                            "line": 299,
                                            "column": 34
                                          }
                                        },
                                        "value": 1,
                                        "rawValue": 1,
                                        "raw": "1"
                                      },
                                      "computed": true
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 11517,
                                      "end": 11525,
                                      "loc": {
                                        "start": {
                                          "line": 299,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 299,
                                          "column": 44
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 11526,
                                    "end": 11531,
                                    "loc": {
                                      "start": {
                                        "line": 299,
                                        "column": 45
                                      },
                                      "end": {
                                        "line": 299,
                                        "column": 50
                                      }
                                    },
                                    "name": "clone"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 11534,
                                "end": 11537,
                                "loc": {
                                  "start": {
                                    "line": 299,
                                    "column": 53
                                  },
                                  "end": {
                                    "line": 299,
                                    "column": 56
                                  }
                                },
                                "name": "sub"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 11538,
                                "end": 11561,
                                "loc": {
                                  "start": {
                                    "line": 299,
                                    "column": 57
                                  },
                                  "end": {
                                    "line": 299,
                                    "column": 80
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 11538,
                                  "end": 11552,
                                  "loc": {
                                    "start": {
                                      "line": 299,
                                      "column": 57
                                    },
                                    "end": {
                                      "line": 299,
                                      "column": 71
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 11538,
                                    "end": 11549,
                                    "loc": {
                                      "start": {
                                        "line": 299,
                                        "column": 57
                                      },
                                      "end": {
                                        "line": 299,
                                        "column": 68
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 11538,
                                      "end": 11542,
                                      "loc": {
                                        "start": {
                                          "line": 299,
                                          "column": 57
                                        },
                                        "end": {
                                          "line": 299,
                                          "column": 61
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 11543,
                                      "end": 11549,
                                      "loc": {
                                        "start": {
                                          "line": 299,
                                          "column": 62
                                        },
                                        "end": {
                                          "line": 299,
                                          "column": 68
                                        }
                                      },
                                      "name": "points"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Literal",
                                    "start": 11550,
                                    "end": 11551,
                                    "loc": {
                                      "start": {
                                        "line": 299,
                                        "column": 69
                                      },
                                      "end": {
                                        "line": 299,
                                        "column": 70
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 11553,
                                  "end": 11561,
                                  "loc": {
                                    "start": {
                                      "line": 299,
                                      "column": 72
                                    },
                                    "end": {
                                      "line": 299,
                                      "column": 80
                                    }
                                  },
                                  "name": "position"
                                },
                                "computed": false
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 11573,
                      "end": 11627,
                      "loc": {
                        "start": {
                          "line": 300,
                          "column": 8
                        },
                        "end": {
                          "line": 300,
                          "column": 62
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 11577,
                          "end": 11626,
                          "loc": {
                            "start": {
                              "line": 300,
                              "column": 12
                            },
                            "end": {
                              "line": 300,
                              "column": 61
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 11577,
                            "end": 11582,
                            "loc": {
                              "start": {
                                "line": 300,
                                "column": 12
                              },
                              "end": {
                                "line": 300,
                                "column": 17
                              }
                            },
                            "name": "angle"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 11586,
                            "end": 11626,
                            "loc": {
                              "start": {
                                "line": 300,
                                "column": 21
                              },
                              "end": {
                                "line": 300,
                                "column": 61
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 11586,
                              "end": 11600,
                              "loc": {
                                "start": {
                                  "line": 300,
                                  "column": 21
                                },
                                "end": {
                                  "line": 300,
                                  "column": 35
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 11586,
                                "end": 11592,
                                "loc": {
                                  "start": {
                                    "line": 300,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 300,
                                    "column": 27
                                  }
                                },
                                "name": "vector"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 11593,
                                "end": 11600,
                                "loc": {
                                  "start": {
                                    "line": 300,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 300,
                                    "column": 35
                                  }
                                },
                                "name": "angleTo"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "NewExpression",
                                "start": 11601,
                                "end": 11625,
                                "loc": {
                                  "start": {
                                    "line": 300,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 300,
                                    "column": 60
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 11605,
                                  "end": 11618,
                                  "loc": {
                                    "start": {
                                      "line": 300,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 300,
                                      "column": 53
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 11605,
                                    "end": 11610,
                                    "loc": {
                                      "start": {
                                        "line": 300,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 300,
                                        "column": 45
                                      }
                                    },
                                    "name": "THREE"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 11611,
                                    "end": 11618,
                                    "loc": {
                                      "start": {
                                        "line": 300,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 300,
                                        "column": 53
                                      }
                                    },
                                    "name": "Vector3"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Literal",
                                    "start": 11619,
                                    "end": 11620,
                                    "loc": {
                                      "start": {
                                        "line": 300,
                                        "column": 54
                                      },
                                      "end": {
                                        "line": 300,
                                        "column": 55
                                      }
                                    },
                                    "value": 1,
                                    "rawValue": 1,
                                    "raw": "1"
                                  },
                                  {
                                    "type": "Literal",
                                    "start": 11621,
                                    "end": 11622,
                                    "loc": {
                                      "start": {
                                        "line": 300,
                                        "column": 56
                                      },
                                      "end": {
                                        "line": 300,
                                        "column": 57
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  {
                                    "type": "Literal",
                                    "start": 11623,
                                    "end": 11624,
                                    "loc": {
                                      "start": {
                                        "line": 300,
                                        "column": 58
                                      },
                                      "end": {
                                        "line": 300,
                                        "column": 59
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  }
                                ]
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 11637,
                      "end": 11703,
                      "loc": {
                        "start": {
                          "line": 301,
                          "column": 8
                        },
                        "end": {
                          "line": 301,
                          "column": 74
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 11641,
                          "end": 11702,
                          "loc": {
                            "start": {
                              "line": 301,
                              "column": 12
                            },
                            "end": {
                              "line": 301,
                              "column": 73
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 11641,
                            "end": 11645,
                            "loc": {
                              "start": {
                                "line": 301,
                                "column": 12
                              },
                              "end": {
                                "line": 301,
                                "column": 16
                              }
                            },
                            "name": "sign"
                          },
                          "init": {
                            "type": "ConditionalExpression",
                            "start": 11648,
                            "end": 11702,
                            "loc": {
                              "start": {
                                "line": 301,
                                "column": 19
                              },
                              "end": {
                                "line": 301,
                                "column": 73
                              }
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 11648,
                              "end": 11693,
                              "loc": {
                                "start": {
                                  "line": 301,
                                  "column": 19
                                },
                                "end": {
                                  "line": 301,
                                  "column": 64
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 11648,
                                "end": 11688,
                                "loc": {
                                  "start": {
                                    "line": 301,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 301,
                                    "column": 59
                                  }
                                },
                                "object": {
                                  "type": "CallExpression",
                                  "start": 11648,
                                  "end": 11686,
                                  "loc": {
                                    "start": {
                                      "line": 301,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 301,
                                      "column": 57
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 11648,
                                    "end": 11660,
                                    "loc": {
                                      "start": {
                                        "line": 301,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 301,
                                        "column": 31
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 11648,
                                      "end": 11654,
                                      "loc": {
                                        "start": {
                                          "line": 301,
                                          "column": 19
                                        },
                                        "end": {
                                          "line": 301,
                                          "column": 25
                                        }
                                      },
                                      "name": "vector"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 11655,
                                      "end": 11660,
                                      "loc": {
                                        "start": {
                                          "line": 301,
                                          "column": 26
                                        },
                                        "end": {
                                          "line": 301,
                                          "column": 31
                                        }
                                      },
                                      "name": "cross"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "NewExpression",
                                      "start": 11661,
                                      "end": 11685,
                                      "loc": {
                                        "start": {
                                          "line": 301,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 301,
                                          "column": 56
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 11665,
                                        "end": 11678,
                                        "loc": {
                                          "start": {
                                            "line": 301,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 301,
                                            "column": 49
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 11665,
                                          "end": 11670,
                                          "loc": {
                                            "start": {
                                              "line": 301,
                                              "column": 36
                                            },
                                            "end": {
                                              "line": 301,
                                              "column": 41
                                            }
                                          },
                                          "name": "THREE"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 11671,
                                          "end": 11678,
                                          "loc": {
                                            "start": {
                                              "line": 301,
                                              "column": 42
                                            },
                                            "end": {
                                              "line": 301,
                                              "column": 49
                                            }
                                          },
                                          "name": "Vector3"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Literal",
                                          "start": 11679,
                                          "end": 11680,
                                          "loc": {
                                            "start": {
                                              "line": 301,
                                              "column": 50
                                            },
                                            "end": {
                                              "line": 301,
                                              "column": 51
                                            }
                                          },
                                          "value": 1,
                                          "rawValue": 1,
                                          "raw": "1"
                                        },
                                        {
                                          "type": "Literal",
                                          "start": 11681,
                                          "end": 11682,
                                          "loc": {
                                            "start": {
                                              "line": 301,
                                              "column": 52
                                            },
                                            "end": {
                                              "line": 301,
                                              "column": 53
                                            }
                                          },
                                          "value": 0,
                                          "rawValue": 0,
                                          "raw": "0"
                                        },
                                        {
                                          "type": "Literal",
                                          "start": 11683,
                                          "end": 11684,
                                          "loc": {
                                            "start": {
                                              "line": 301,
                                              "column": 54
                                            },
                                            "end": {
                                              "line": 301,
                                              "column": 55
                                            }
                                          },
                                          "value": 0,
                                          "rawValue": 0,
                                          "raw": "0"
                                        }
                                      ]
                                    }
                                  ]
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 11687,
                                  "end": 11688,
                                  "loc": {
                                    "start": {
                                      "line": 301,
                                      "column": 58
                                    },
                                    "end": {
                                      "line": 301,
                                      "column": 59
                                    }
                                  },
                                  "name": "z"
                                },
                                "computed": false
                              },
                              "operator": ">=",
                              "right": {
                                "type": "Literal",
                                "start": 11692,
                                "end": 11693,
                                "loc": {
                                  "start": {
                                    "line": 301,
                                    "column": 63
                                  },
                                  "end": {
                                    "line": 301,
                                    "column": 64
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0"
                              }
                            },
                            "consequent": {
                              "type": "UnaryExpression",
                              "start": 11696,
                              "end": 11698,
                              "loc": {
                                "start": {
                                  "line": 301,
                                  "column": 67
                                },
                                "end": {
                                  "line": 301,
                                  "column": 69
                                }
                              },
                              "operator": "-",
                              "prefix": true,
                              "argument": {
                                "type": "Literal",
                                "start": 11697,
                                "end": 11698,
                                "loc": {
                                  "start": {
                                    "line": 301,
                                    "column": 68
                                  },
                                  "end": {
                                    "line": 301,
                                    "column": 69
                                  }
                                },
                                "value": 1,
                                "rawValue": 1,
                                "raw": "1"
                              }
                            },
                            "alternate": {
                              "type": "Literal",
                              "start": 11701,
                              "end": 11702,
                              "loc": {
                                "start": {
                                  "line": 301,
                                  "column": 72
                                },
                                "end": {
                                  "line": 301,
                                  "column": 73
                                }
                              },
                              "value": 1,
                              "rawValue": 1,
                              "raw": "1"
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 11713,
                      "end": 11748,
                      "loc": {
                        "start": {
                          "line": 302,
                          "column": 8
                        },
                        "end": {
                          "line": 302,
                          "column": 43
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 11713,
                        "end": 11747,
                        "loc": {
                          "start": {
                            "line": 302,
                            "column": 8
                          },
                          "end": {
                            "line": 302,
                            "column": 42
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 11713,
                          "end": 11718,
                          "loc": {
                            "start": {
                              "line": 302,
                              "column": 8
                            },
                            "end": {
                              "line": 302,
                              "column": 13
                            }
                          },
                          "name": "angle"
                        },
                        "right": {
                          "type": "BinaryExpression",
                          "start": 11721,
                          "end": 11747,
                          "loc": {
                            "start": {
                              "line": 302,
                              "column": 16
                            },
                            "end": {
                              "line": 302,
                              "column": 42
                            }
                          },
                          "left": {
                            "type": "BinaryExpression",
                            "start": 11721,
                            "end": 11733,
                            "loc": {
                              "start": {
                                "line": 302,
                                "column": 16
                              },
                              "end": {
                                "line": 302,
                                "column": 28
                              }
                            },
                            "left": {
                              "type": "Identifier",
                              "start": 11721,
                              "end": 11726,
                              "loc": {
                                "start": {
                                  "line": 302,
                                  "column": 16
                                },
                                "end": {
                                  "line": 302,
                                  "column": 21
                                }
                              },
                              "name": "angle"
                            },
                            "operator": "*",
                            "right": {
                              "type": "Identifier",
                              "start": 11729,
                              "end": 11733,
                              "loc": {
                                "start": {
                                  "line": 302,
                                  "column": 24
                                },
                                "end": {
                                  "line": 302,
                                  "column": 28
                                }
                              },
                              "name": "sign"
                            }
                          },
                          "operator": "-",
                          "right": {
                            "type": "BinaryExpression",
                            "start": 11736,
                            "end": 11747,
                            "loc": {
                              "start": {
                                "line": 302,
                                "column": 31
                              },
                              "end": {
                                "line": 302,
                                "column": 42
                              }
                            },
                            "left": {
                              "type": "MemberExpression",
                              "start": 11736,
                              "end": 11743,
                              "loc": {
                                "start": {
                                  "line": 302,
                                  "column": 31
                                },
                                "end": {
                                  "line": 302,
                                  "column": 38
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 11736,
                                "end": 11740,
                                "loc": {
                                  "start": {
                                    "line": 302,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 302,
                                    "column": 35
                                  }
                                },
                                "name": "Math"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 11741,
                                "end": 11743,
                                "loc": {
                                  "start": {
                                    "line": 302,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 302,
                                    "column": 38
                                  }
                                },
                                "name": "PI"
                              },
                              "computed": false
                            },
                            "operator": "/",
                            "right": {
                              "type": "Literal",
                              "start": 11746,
                              "end": 11747,
                              "loc": {
                                "start": {
                                  "line": 302,
                                  "column": 41
                                },
                                "end": {
                                  "line": 302,
                                  "column": 42
                                }
                              },
                              "value": 2,
                              "rawValue": 2,
                              "raw": "2"
                            }
                          }
                        }
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 11760,
                      "end": 11862,
                      "loc": {
                        "start": {
                          "line": 304,
                          "column": 8
                        },
                        "end": {
                          "line": 304,
                          "column": 110
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 11764,
                          "end": 11861,
                          "loc": {
                            "start": {
                              "line": 304,
                              "column": 12
                            },
                            "end": {
                              "line": 304,
                              "column": 109
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 11764,
                            "end": 11767,
                            "loc": {
                              "start": {
                                "line": 304,
                                "column": 12
                              },
                              "end": {
                                "line": 304,
                                "column": 15
                              }
                            },
                            "name": "pos"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 11770,
                            "end": 11861,
                            "loc": {
                              "start": {
                                "line": 304,
                                "column": 18
                              },
                              "end": {
                                "line": 304,
                                "column": 109
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 11770,
                              "end": 11798,
                              "loc": {
                                "start": {
                                  "line": 304,
                                  "column": 18
                                },
                                "end": {
                                  "line": 304,
                                  "column": 46
                                }
                              },
                              "object": {
                                "type": "CallExpression",
                                "start": 11770,
                                "end": 11794,
                                "loc": {
                                  "start": {
                                    "line": 304,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 304,
                                    "column": 42
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 11770,
                                  "end": 11792,
                                  "loc": {
                                    "start": {
                                      "line": 304,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 304,
                                      "column": 40
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 11770,
                                    "end": 11774,
                                    "loc": {
                                      "start": {
                                        "line": 304,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 304,
                                        "column": 22
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 11775,
                                    "end": 11792,
                                    "loc": {
                                      "start": {
                                        "line": 304,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 304,
                                        "column": 40
                                      }
                                    },
                                    "name": "getMiddlePosition"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 11795,
                                "end": 11798,
                                "loc": {
                                  "start": {
                                    "line": 304,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 304,
                                    "column": 46
                                  }
                                },
                                "name": "add"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "NewExpression",
                                "start": 11799,
                                "end": 11860,
                                "loc": {
                                  "start": {
                                    "line": 304,
                                    "column": 47
                                  },
                                  "end": {
                                    "line": 304,
                                    "column": 108
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 11803,
                                  "end": 11816,
                                  "loc": {
                                    "start": {
                                      "line": 304,
                                      "column": 51
                                    },
                                    "end": {
                                      "line": 304,
                                      "column": 64
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 11803,
                                    "end": 11808,
                                    "loc": {
                                      "start": {
                                        "line": 304,
                                        "column": 51
                                      },
                                      "end": {
                                        "line": 304,
                                        "column": 56
                                      }
                                    },
                                    "name": "THREE"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 11809,
                                    "end": 11816,
                                    "loc": {
                                      "start": {
                                        "line": 304,
                                        "column": 57
                                      },
                                      "end": {
                                        "line": 304,
                                        "column": 64
                                      }
                                    },
                                    "name": "Vector3"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "BinaryExpression",
                                    "start": 11817,
                                    "end": 11836,
                                    "loc": {
                                      "start": {
                                        "line": 304,
                                        "column": 65
                                      },
                                      "end": {
                                        "line": 304,
                                        "column": 84
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 11817,
                                      "end": 11818,
                                      "loc": {
                                        "start": {
                                          "line": 304,
                                          "column": 65
                                        },
                                        "end": {
                                          "line": 304,
                                          "column": 66
                                        }
                                      },
                                      "name": "a"
                                    },
                                    "operator": "*",
                                    "right": {
                                      "type": "CallExpression",
                                      "start": 11821,
                                      "end": 11836,
                                      "loc": {
                                        "start": {
                                          "line": 304,
                                          "column": 69
                                        },
                                        "end": {
                                          "line": 304,
                                          "column": 84
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 11821,
                                        "end": 11829,
                                        "loc": {
                                          "start": {
                                            "line": 304,
                                            "column": 69
                                          },
                                          "end": {
                                            "line": 304,
                                            "column": 77
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 11821,
                                          "end": 11825,
                                          "loc": {
                                            "start": {
                                              "line": 304,
                                              "column": 69
                                            },
                                            "end": {
                                              "line": 304,
                                              "column": 73
                                            }
                                          },
                                          "name": "Math"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 11826,
                                          "end": 11829,
                                          "loc": {
                                            "start": {
                                              "line": 304,
                                              "column": 74
                                            },
                                            "end": {
                                              "line": 304,
                                              "column": 77
                                            }
                                          },
                                          "name": "cos"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 11830,
                                          "end": 11835,
                                          "loc": {
                                            "start": {
                                              "line": 304,
                                              "column": 78
                                            },
                                            "end": {
                                              "line": 304,
                                              "column": 83
                                            }
                                          },
                                          "name": "angle"
                                        }
                                      ]
                                    }
                                  },
                                  {
                                    "type": "BinaryExpression",
                                    "start": 11838,
                                    "end": 11857,
                                    "loc": {
                                      "start": {
                                        "line": 304,
                                        "column": 86
                                      },
                                      "end": {
                                        "line": 304,
                                        "column": 105
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 11838,
                                      "end": 11839,
                                      "loc": {
                                        "start": {
                                          "line": 304,
                                          "column": 86
                                        },
                                        "end": {
                                          "line": 304,
                                          "column": 87
                                        }
                                      },
                                      "name": "b"
                                    },
                                    "operator": "*",
                                    "right": {
                                      "type": "CallExpression",
                                      "start": 11842,
                                      "end": 11857,
                                      "loc": {
                                        "start": {
                                          "line": 304,
                                          "column": 90
                                        },
                                        "end": {
                                          "line": 304,
                                          "column": 105
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 11842,
                                        "end": 11850,
                                        "loc": {
                                          "start": {
                                            "line": 304,
                                            "column": 90
                                          },
                                          "end": {
                                            "line": 304,
                                            "column": 98
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 11842,
                                          "end": 11846,
                                          "loc": {
                                            "start": {
                                              "line": 304,
                                              "column": 90
                                            },
                                            "end": {
                                              "line": 304,
                                              "column": 94
                                            }
                                          },
                                          "name": "Math"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 11847,
                                          "end": 11850,
                                          "loc": {
                                            "start": {
                                              "line": 304,
                                              "column": 95
                                            },
                                            "end": {
                                              "line": 304,
                                              "column": 98
                                            }
                                          },
                                          "name": "sin"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 11851,
                                          "end": 11856,
                                          "loc": {
                                            "start": {
                                              "line": 304,
                                              "column": 99
                                            },
                                            "end": {
                                              "line": 304,
                                              "column": 104
                                            }
                                          },
                                          "name": "angle"
                                        }
                                      ]
                                    }
                                  },
                                  {
                                    "type": "Literal",
                                    "start": 11858,
                                    "end": 11859,
                                    "loc": {
                                      "start": {
                                        "line": 304,
                                        "column": 106
                                      },
                                      "end": {
                                        "line": 304,
                                        "column": 107
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  }
                                ]
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 11872,
                      "end": 11883,
                      "loc": {
                        "start": {
                          "line": 305,
                          "column": 8
                        },
                        "end": {
                          "line": 305,
                          "column": 19
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 11879,
                        "end": 11882,
                        "loc": {
                          "start": {
                            "line": 305,
                            "column": 15
                          },
                          "end": {
                            "line": 305,
                            "column": 18
                          }
                        },
                        "name": "pos"
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 11898,
              "end": 12673,
              "loc": {
                "start": {
                  "line": 308,
                  "column": 4
                },
                "end": {
                  "line": 324,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 11898,
                "end": 11917,
                "loc": {
                  "start": {
                    "line": 308,
                    "column": 4
                  },
                  "end": {
                    "line": 308,
                    "column": 23
                  }
                },
                "name": "updateVisualization"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 11917,
                "end": 12673,
                "loc": {
                  "start": {
                    "line": 308,
                    "column": 23
                  },
                  "end": {
                    "line": 324,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 11920,
                  "end": 12673,
                  "loc": {
                    "start": {
                      "line": 308,
                      "column": 26
                    },
                    "end": {
                      "line": 324,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 11931,
                      "end": 12002,
                      "loc": {
                        "start": {
                          "line": 309,
                          "column": 8
                        },
                        "end": {
                          "line": 309,
                          "column": 79
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 11935,
                          "end": 12001,
                          "loc": {
                            "start": {
                              "line": 309,
                              "column": 12
                            },
                            "end": {
                              "line": 309,
                              "column": 78
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 11935,
                            "end": 11939,
                            "loc": {
                              "start": {
                                "line": 309,
                                "column": 12
                              },
                              "end": {
                                "line": 309,
                                "column": 16
                              }
                            },
                            "name": "xMax"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 11942,
                            "end": 12001,
                            "loc": {
                              "start": {
                                "line": 309,
                                "column": 19
                              },
                              "end": {
                                "line": 309,
                                "column": 78
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 11942,
                              "end": 11976,
                              "loc": {
                                "start": {
                                  "line": 309,
                                  "column": 19
                                },
                                "end": {
                                  "line": 309,
                                  "column": 53
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 11942,
                                "end": 11965,
                                "loc": {
                                  "start": {
                                    "line": 309,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 309,
                                    "column": 42
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 11942,
                                  "end": 11956,
                                  "loc": {
                                    "start": {
                                      "line": 309,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 309,
                                      "column": 33
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 11942,
                                    "end": 11953,
                                    "loc": {
                                      "start": {
                                        "line": 309,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 309,
                                        "column": 30
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 11942,
                                      "end": 11946,
                                      "loc": {
                                        "start": {
                                          "line": 309,
                                          "column": 19
                                        },
                                        "end": {
                                          "line": 309,
                                          "column": 23
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 11947,
                                      "end": 11953,
                                      "loc": {
                                        "start": {
                                          "line": 309,
                                          "column": 24
                                        },
                                        "end": {
                                          "line": 309,
                                          "column": 30
                                        }
                                      },
                                      "name": "points"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Literal",
                                    "start": 11954,
                                    "end": 11955,
                                    "loc": {
                                      "start": {
                                        "line": 309,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 309,
                                        "column": 32
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 11957,
                                  "end": 11965,
                                  "loc": {
                                    "start": {
                                      "line": 309,
                                      "column": 34
                                    },
                                    "end": {
                                      "line": 309,
                                      "column": 42
                                    }
                                  },
                                  "name": "position"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 11966,
                                "end": 11976,
                                "loc": {
                                  "start": {
                                    "line": 309,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 309,
                                    "column": 53
                                  }
                                },
                                "name": "distanceTo"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 11977,
                                "end": 12000,
                                "loc": {
                                  "start": {
                                    "line": 309,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 309,
                                    "column": 77
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 11977,
                                  "end": 11991,
                                  "loc": {
                                    "start": {
                                      "line": 309,
                                      "column": 54
                                    },
                                    "end": {
                                      "line": 309,
                                      "column": 68
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 11977,
                                    "end": 11988,
                                    "loc": {
                                      "start": {
                                        "line": 309,
                                        "column": 54
                                      },
                                      "end": {
                                        "line": 309,
                                        "column": 65
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 11977,
                                      "end": 11981,
                                      "loc": {
                                        "start": {
                                          "line": 309,
                                          "column": 54
                                        },
                                        "end": {
                                          "line": 309,
                                          "column": 58
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 11982,
                                      "end": 11988,
                                      "loc": {
                                        "start": {
                                          "line": 309,
                                          "column": 59
                                        },
                                        "end": {
                                          "line": 309,
                                          "column": 65
                                        }
                                      },
                                      "name": "points"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Literal",
                                    "start": 11989,
                                    "end": 11990,
                                    "loc": {
                                      "start": {
                                        "line": 309,
                                        "column": 66
                                      },
                                      "end": {
                                        "line": 309,
                                        "column": 67
                                      }
                                    },
                                    "value": 1,
                                    "rawValue": 1,
                                    "raw": "1"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 11992,
                                  "end": 12000,
                                  "loc": {
                                    "start": {
                                      "line": 309,
                                      "column": 69
                                    },
                                    "end": {
                                      "line": 309,
                                      "column": 77
                                    }
                                  },
                                  "name": "position"
                                },
                                "computed": false
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 12012,
                      "end": 12034,
                      "loc": {
                        "start": {
                          "line": 310,
                          "column": 8
                        },
                        "end": {
                          "line": 310,
                          "column": 30
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 12016,
                          "end": 12033,
                          "loc": {
                            "start": {
                              "line": 310,
                              "column": 12
                            },
                            "end": {
                              "line": 310,
                              "column": 29
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 12016,
                            "end": 12020,
                            "loc": {
                              "start": {
                                "line": 310,
                                "column": 12
                              },
                              "end": {
                                "line": 310,
                                "column": 16
                              }
                            },
                            "name": "yMax"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 12023,
                            "end": 12033,
                            "loc": {
                              "start": {
                                "line": 310,
                                "column": 19
                              },
                              "end": {
                                "line": 310,
                                "column": 29
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 12023,
                              "end": 12027,
                              "loc": {
                                "start": {
                                  "line": 310,
                                  "column": 19
                                },
                                "end": {
                                  "line": 310,
                                  "column": 23
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 12028,
                              "end": 12033,
                              "loc": {
                                "start": {
                                  "line": 310,
                                  "column": 24
                                },
                                "end": {
                                  "line": 310,
                                  "column": 29
                                }
                              },
                              "name": "width"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var",
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " update scale of this.mesh",
                          "start": 12046,
                          "end": 12074,
                          "loc": {
                            "start": {
                              "line": 312,
                              "column": 8
                            },
                            "end": {
                              "line": 312,
                              "column": 36
                            }
                          },
                          "range": [
                            12046,
                            12074
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 12084,
                      "end": 12099,
                      "loc": {
                        "start": {
                          "line": 313,
                          "column": 8
                        },
                        "end": {
                          "line": 313,
                          "column": 23
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 12088,
                          "end": 12098,
                          "loc": {
                            "start": {
                              "line": 313,
                              "column": 12
                            },
                            "end": {
                              "line": 313,
                              "column": 22
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 12088,
                            "end": 12091,
                            "loc": {
                              "start": {
                                "line": 313,
                                "column": 12
                              },
                              "end": {
                                "line": 313,
                                "column": 15
                              }
                            },
                            "name": "eps",
                            "leadingComments": null
                          },
                          "init": {
                            "type": "Literal",
                            "start": 12094,
                            "end": 12098,
                            "loc": {
                              "start": {
                                "line": 313,
                                "column": 18
                              },
                              "end": {
                                "line": 313,
                                "column": 22
                              }
                            },
                            "value": 0.001,
                            "rawValue": 0.001,
                            "raw": "1e-3"
                          },
                          "leadingComments": null
                        }
                      ],
                      "kind": "var",
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " update scale of this.mesh",
                          "start": 12046,
                          "end": 12074,
                          "loc": {
                            "start": {
                              "line": 312,
                              "column": 8
                            },
                            "end": {
                              "line": 312,
                              "column": 36
                            }
                          },
                          "range": [
                            12046,
                            12074
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 12109,
                      "end": 12176,
                      "loc": {
                        "start": {
                          "line": 314,
                          "column": 8
                        },
                        "end": {
                          "line": 314,
                          "column": 75
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 12109,
                        "end": 12175,
                        "loc": {
                          "start": {
                            "line": 314,
                            "column": 8
                          },
                          "end": {
                            "line": 314,
                            "column": 74
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 12109,
                          "end": 12128,
                          "loc": {
                            "start": {
                              "line": 314,
                              "column": 8
                            },
                            "end": {
                              "line": 314,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 12109,
                            "end": 12124,
                            "loc": {
                              "start": {
                                "line": 314,
                                "column": 8
                              },
                              "end": {
                                "line": 314,
                                "column": 23
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 12109,
                              "end": 12118,
                              "loc": {
                                "start": {
                                  "line": 314,
                                  "column": 8
                                },
                                "end": {
                                  "line": 314,
                                  "column": 17
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 12109,
                                "end": 12113,
                                "loc": {
                                  "start": {
                                    "line": 314,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 314,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 12114,
                                "end": 12118,
                                "loc": {
                                  "start": {
                                    "line": 314,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 314,
                                    "column": 17
                                  }
                                },
                                "name": "mesh"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 12119,
                              "end": 12124,
                              "loc": {
                                "start": {
                                  "line": 314,
                                  "column": 18
                                },
                                "end": {
                                  "line": 314,
                                  "column": 23
                                }
                              },
                              "name": "scale"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12125,
                            "end": 12128,
                            "loc": {
                              "start": {
                                "line": 314,
                                "column": 24
                              },
                              "end": {
                                "line": 314,
                                "column": 27
                              }
                            },
                            "name": "set"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 12129,
                            "end": 12148,
                            "loc": {
                              "start": {
                                "line": 314,
                                "column": 28
                              },
                              "end": {
                                "line": 314,
                                "column": 47
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 12129,
                              "end": 12137,
                              "loc": {
                                "start": {
                                  "line": 314,
                                  "column": 28
                                },
                                "end": {
                                  "line": 314,
                                  "column": 36
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 12129,
                                "end": 12133,
                                "loc": {
                                  "start": {
                                    "line": 314,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 314,
                                    "column": 32
                                  }
                                },
                                "name": "Math"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 12134,
                                "end": 12137,
                                "loc": {
                                  "start": {
                                    "line": 314,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 314,
                                    "column": 36
                                  }
                                },
                                "name": "max"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 12138,
                                "end": 12142,
                                "loc": {
                                  "start": {
                                    "line": 314,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 314,
                                    "column": 41
                                  }
                                },
                                "name": "xMax"
                              },
                              {
                                "type": "Identifier",
                                "start": 12144,
                                "end": 12147,
                                "loc": {
                                  "start": {
                                    "line": 314,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 314,
                                    "column": 46
                                  }
                                },
                                "name": "eps"
                              }
                            ]
                          },
                          {
                            "type": "CallExpression",
                            "start": 12150,
                            "end": 12169,
                            "loc": {
                              "start": {
                                "line": 314,
                                "column": 49
                              },
                              "end": {
                                "line": 314,
                                "column": 68
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 12150,
                              "end": 12158,
                              "loc": {
                                "start": {
                                  "line": 314,
                                  "column": 49
                                },
                                "end": {
                                  "line": 314,
                                  "column": 57
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 12150,
                                "end": 12154,
                                "loc": {
                                  "start": {
                                    "line": 314,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 314,
                                    "column": 53
                                  }
                                },
                                "name": "Math"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 12155,
                                "end": 12158,
                                "loc": {
                                  "start": {
                                    "line": 314,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 314,
                                    "column": 57
                                  }
                                },
                                "name": "max"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 12159,
                                "end": 12163,
                                "loc": {
                                  "start": {
                                    "line": 314,
                                    "column": 58
                                  },
                                  "end": {
                                    "line": 314,
                                    "column": 62
                                  }
                                },
                                "name": "yMax"
                              },
                              {
                                "type": "Identifier",
                                "start": 12165,
                                "end": 12168,
                                "loc": {
                                  "start": {
                                    "line": 314,
                                    "column": 64
                                  },
                                  "end": {
                                    "line": 314,
                                    "column": 67
                                  }
                                },
                                "name": "eps"
                              }
                            ]
                          },
                          {
                            "type": "Identifier",
                            "start": 12171,
                            "end": 12174,
                            "loc": {
                              "start": {
                                "line": 314,
                                "column": 70
                              },
                              "end": {
                                "line": 314,
                                "column": 73
                              }
                            },
                            "name": "eps"
                          }
                        ]
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " set quaternion of shortest-arc rotation from OX axis to line direction",
                          "start": 12188,
                          "end": 12261,
                          "loc": {
                            "start": {
                              "line": 316,
                              "column": 8
                            },
                            "end": {
                              "line": 316,
                              "column": 81
                            }
                          },
                          "range": [
                            12188,
                            12261
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 12271,
                      "end": 12354,
                      "loc": {
                        "start": {
                          "line": 317,
                          "column": 8
                        },
                        "end": {
                          "line": 317,
                          "column": 91
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 12275,
                          "end": 12353,
                          "loc": {
                            "start": {
                              "line": 317,
                              "column": 12
                            },
                            "end": {
                              "line": 317,
                              "column": 90
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 12275,
                            "end": 12278,
                            "loc": {
                              "start": {
                                "line": 317,
                                "column": 12
                              },
                              "end": {
                                "line": 317,
                                "column": 15
                              }
                            },
                            "name": "dir",
                            "leadingComments": null
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 12281,
                            "end": 12353,
                            "loc": {
                              "start": {
                                "line": 317,
                                "column": 18
                              },
                              "end": {
                                "line": 317,
                                "column": 90
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 12281,
                              "end": 12351,
                              "loc": {
                                "start": {
                                  "line": 317,
                                  "column": 18
                                },
                                "end": {
                                  "line": 317,
                                  "column": 88
                                }
                              },
                              "object": {
                                "type": "CallExpression",
                                "start": 12281,
                                "end": 12341,
                                "loc": {
                                  "start": {
                                    "line": 317,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 317,
                                    "column": 78
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 12281,
                                  "end": 12316,
                                  "loc": {
                                    "start": {
                                      "line": 317,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 317,
                                      "column": 53
                                    }
                                  },
                                  "object": {
                                    "type": "CallExpression",
                                    "start": 12281,
                                    "end": 12312,
                                    "loc": {
                                      "start": {
                                        "line": 317,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 317,
                                        "column": 49
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 12281,
                                      "end": 12310,
                                      "loc": {
                                        "start": {
                                          "line": 317,
                                          "column": 18
                                        },
                                        "end": {
                                          "line": 317,
                                          "column": 47
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 12281,
                                        "end": 12304,
                                        "loc": {
                                          "start": {
                                            "line": 317,
                                            "column": 18
                                          },
                                          "end": {
                                            "line": 317,
                                            "column": 41
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 12281,
                                          "end": 12295,
                                          "loc": {
                                            "start": {
                                              "line": 317,
                                              "column": 18
                                            },
                                            "end": {
                                              "line": 317,
                                              "column": 32
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 12281,
                                            "end": 12292,
                                            "loc": {
                                              "start": {
                                                "line": 317,
                                                "column": 18
                                              },
                                              "end": {
                                                "line": 317,
                                                "column": 29
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 12281,
                                              "end": 12285,
                                              "loc": {
                                                "start": {
                                                  "line": 317,
                                                  "column": 18
                                                },
                                                "end": {
                                                  "line": 317,
                                                  "column": 22
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 12286,
                                              "end": 12292,
                                              "loc": {
                                                "start": {
                                                  "line": 317,
                                                  "column": 23
                                                },
                                                "end": {
                                                  "line": 317,
                                                  "column": 29
                                                }
                                              },
                                              "name": "points"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Literal",
                                            "start": 12293,
                                            "end": 12294,
                                            "loc": {
                                              "start": {
                                                "line": 317,
                                                "column": 30
                                              },
                                              "end": {
                                                "line": 317,
                                                "column": 31
                                              }
                                            },
                                            "value": 1,
                                            "rawValue": 1,
                                            "raw": "1"
                                          },
                                          "computed": true
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 12296,
                                          "end": 12304,
                                          "loc": {
                                            "start": {
                                              "line": 317,
                                              "column": 33
                                            },
                                            "end": {
                                              "line": 317,
                                              "column": 41
                                            }
                                          },
                                          "name": "position"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 12305,
                                        "end": 12310,
                                        "loc": {
                                          "start": {
                                            "line": 317,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 317,
                                            "column": 47
                                          }
                                        },
                                        "name": "clone"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 12313,
                                    "end": 12316,
                                    "loc": {
                                      "start": {
                                        "line": 317,
                                        "column": 50
                                      },
                                      "end": {
                                        "line": 317,
                                        "column": 53
                                      }
                                    },
                                    "name": "sub"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "MemberExpression",
                                    "start": 12317,
                                    "end": 12340,
                                    "loc": {
                                      "start": {
                                        "line": 317,
                                        "column": 54
                                      },
                                      "end": {
                                        "line": 317,
                                        "column": 77
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 12317,
                                      "end": 12331,
                                      "loc": {
                                        "start": {
                                          "line": 317,
                                          "column": 54
                                        },
                                        "end": {
                                          "line": 317,
                                          "column": 68
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 12317,
                                        "end": 12328,
                                        "loc": {
                                          "start": {
                                            "line": 317,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 317,
                                            "column": 65
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 12317,
                                          "end": 12321,
                                          "loc": {
                                            "start": {
                                              "line": 317,
                                              "column": 54
                                            },
                                            "end": {
                                              "line": 317,
                                              "column": 58
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 12322,
                                          "end": 12328,
                                          "loc": {
                                            "start": {
                                              "line": 317,
                                              "column": 59
                                            },
                                            "end": {
                                              "line": 317,
                                              "column": 65
                                            }
                                          },
                                          "name": "points"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Literal",
                                        "start": 12329,
                                        "end": 12330,
                                        "loc": {
                                          "start": {
                                            "line": 317,
                                            "column": 66
                                          },
                                          "end": {
                                            "line": 317,
                                            "column": 67
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      "computed": true
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 12332,
                                      "end": 12340,
                                      "loc": {
                                        "start": {
                                          "line": 317,
                                          "column": 69
                                        },
                                        "end": {
                                          "line": 317,
                                          "column": 77
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  }
                                ]
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 12342,
                                "end": 12351,
                                "loc": {
                                  "start": {
                                    "line": 317,
                                    "column": 79
                                  },
                                  "end": {
                                    "line": 317,
                                    "column": 88
                                  }
                                },
                                "name": "normalize"
                              },
                              "computed": false
                            },
                            "arguments": []
                          },
                          "leadingComments": null
                        }
                      ],
                      "kind": "var",
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " set quaternion of shortest-arc rotation from OX axis to line direction",
                          "start": 12188,
                          "end": 12261,
                          "loc": {
                            "start": {
                              "line": 316,
                              "column": 8
                            },
                            "end": {
                              "line": 316,
                              "column": 81
                            }
                          },
                          "range": [
                            12188,
                            12261
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 12364,
                      "end": 12447,
                      "loc": {
                        "start": {
                          "line": 318,
                          "column": 8
                        },
                        "end": {
                          "line": 318,
                          "column": 91
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 12368,
                          "end": 12446,
                          "loc": {
                            "start": {
                              "line": 318,
                              "column": 12
                            },
                            "end": {
                              "line": 318,
                              "column": 90
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 12368,
                            "end": 12369,
                            "loc": {
                              "start": {
                                "line": 318,
                                "column": 12
                              },
                              "end": {
                                "line": 318,
                                "column": 13
                              }
                            },
                            "name": "q"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 12372,
                            "end": 12446,
                            "loc": {
                              "start": {
                                "line": 318,
                                "column": 16
                              },
                              "end": {
                                "line": 318,
                                "column": 90
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 12372,
                              "end": 12413,
                              "loc": {
                                "start": {
                                  "line": 318,
                                  "column": 16
                                },
                                "end": {
                                  "line": 318,
                                  "column": 57
                                }
                              },
                              "object": {
                                "type": "NewExpression",
                                "start": 12372,
                                "end": 12394,
                                "loc": {
                                  "start": {
                                    "line": 318,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 318,
                                    "column": 38
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 12376,
                                  "end": 12392,
                                  "loc": {
                                    "start": {
                                      "line": 318,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 318,
                                      "column": 36
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 12376,
                                    "end": 12381,
                                    "loc": {
                                      "start": {
                                        "line": 318,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 318,
                                        "column": 25
                                      }
                                    },
                                    "name": "THREE"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 12382,
                                    "end": 12392,
                                    "loc": {
                                      "start": {
                                        "line": 318,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 318,
                                        "column": 36
                                      }
                                    },
                                    "name": "Quaternion"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 12395,
                                "end": 12413,
                                "loc": {
                                  "start": {
                                    "line": 318,
                                    "column": 39
                                  },
                                  "end": {
                                    "line": 318,
                                    "column": 57
                                  }
                                },
                                "name": "setFromUnitVectors"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "NewExpression",
                                "start": 12414,
                                "end": 12440,
                                "loc": {
                                  "start": {
                                    "line": 318,
                                    "column": 58
                                  },
                                  "end": {
                                    "line": 318,
                                    "column": 84
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 12418,
                                  "end": 12431,
                                  "loc": {
                                    "start": {
                                      "line": 318,
                                      "column": 62
                                    },
                                    "end": {
                                      "line": 318,
                                      "column": 75
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 12418,
                                    "end": 12423,
                                    "loc": {
                                      "start": {
                                        "line": 318,
                                        "column": 62
                                      },
                                      "end": {
                                        "line": 318,
                                        "column": 67
                                      }
                                    },
                                    "name": "THREE"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 12424,
                                    "end": 12431,
                                    "loc": {
                                      "start": {
                                        "line": 318,
                                        "column": 68
                                      },
                                      "end": {
                                        "line": 318,
                                        "column": 75
                                      }
                                    },
                                    "name": "Vector3"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Literal",
                                    "start": 12432,
                                    "end": 12433,
                                    "loc": {
                                      "start": {
                                        "line": 318,
                                        "column": 76
                                      },
                                      "end": {
                                        "line": 318,
                                        "column": 77
                                      }
                                    },
                                    "value": 1,
                                    "rawValue": 1,
                                    "raw": "1"
                                  },
                                  {
                                    "type": "Literal",
                                    "start": 12435,
                                    "end": 12436,
                                    "loc": {
                                      "start": {
                                        "line": 318,
                                        "column": 79
                                      },
                                      "end": {
                                        "line": 318,
                                        "column": 80
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  {
                                    "type": "Literal",
                                    "start": 12438,
                                    "end": 12439,
                                    "loc": {
                                      "start": {
                                        "line": 318,
                                        "column": 82
                                      },
                                      "end": {
                                        "line": 318,
                                        "column": 83
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  }
                                ]
                              },
                              {
                                "type": "Identifier",
                                "start": 12442,
                                "end": 12445,
                                "loc": {
                                  "start": {
                                    "line": 318,
                                    "column": 86
                                  },
                                  "end": {
                                    "line": 318,
                                    "column": 89
                                  }
                                },
                                "name": "dir"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 12457,
                      "end": 12486,
                      "loc": {
                        "start": {
                          "line": 319,
                          "column": 8
                        },
                        "end": {
                          "line": 319,
                          "column": 37
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 12457,
                        "end": 12485,
                        "loc": {
                          "start": {
                            "line": 319,
                            "column": 8
                          },
                          "end": {
                            "line": 319,
                            "column": 36
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 12457,
                          "end": 12482,
                          "loc": {
                            "start": {
                              "line": 319,
                              "column": 8
                            },
                            "end": {
                              "line": 319,
                              "column": 33
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 12457,
                            "end": 12477,
                            "loc": {
                              "start": {
                                "line": 319,
                                "column": 8
                              },
                              "end": {
                                "line": 319,
                                "column": 28
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 12457,
                              "end": 12466,
                              "loc": {
                                "start": {
                                  "line": 319,
                                  "column": 8
                                },
                                "end": {
                                  "line": 319,
                                  "column": 17
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 12457,
                                "end": 12461,
                                "loc": {
                                  "start": {
                                    "line": 319,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 319,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 12462,
                                "end": 12466,
                                "loc": {
                                  "start": {
                                    "line": 319,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 319,
                                    "column": 17
                                  }
                                },
                                "name": "mesh"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 12467,
                              "end": 12477,
                              "loc": {
                                "start": {
                                  "line": 319,
                                  "column": 18
                                },
                                "end": {
                                  "line": 319,
                                  "column": 28
                                }
                              },
                              "name": "quaternion"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12478,
                            "end": 12482,
                            "loc": {
                              "start": {
                                "line": 319,
                                "column": 29
                              },
                              "end": {
                                "line": 319,
                                "column": 33
                              }
                            },
                            "name": "copy"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 12483,
                            "end": 12484,
                            "loc": {
                              "start": {
                                "line": 319,
                                "column": 34
                              },
                              "end": {
                                "line": 319,
                                "column": 35
                              }
                            },
                            "name": "q"
                          }
                        ]
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " set position of segment's center",
                          "start": 12498,
                          "end": 12533,
                          "loc": {
                            "start": {
                              "line": 321,
                              "column": 8
                            },
                            "end": {
                              "line": 321,
                              "column": 43
                            }
                          },
                          "range": [
                            12498,
                            12533
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 12543,
                      "end": 12593,
                      "loc": {
                        "start": {
                          "line": 322,
                          "column": 8
                        },
                        "end": {
                          "line": 322,
                          "column": 58
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 12543,
                        "end": 12592,
                        "loc": {
                          "start": {
                            "line": 322,
                            "column": 8
                          },
                          "end": {
                            "line": 322,
                            "column": 57
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 12543,
                          "end": 12566,
                          "loc": {
                            "start": {
                              "line": 322,
                              "column": 8
                            },
                            "end": {
                              "line": 322,
                              "column": 31
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 12543,
                            "end": 12561,
                            "loc": {
                              "start": {
                                "line": 322,
                                "column": 8
                              },
                              "end": {
                                "line": 322,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 12543,
                              "end": 12552,
                              "loc": {
                                "start": {
                                  "line": 322,
                                  "column": 8
                                },
                                "end": {
                                  "line": 322,
                                  "column": 17
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 12543,
                                "end": 12547,
                                "loc": {
                                  "start": {
                                    "line": 322,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 322,
                                    "column": 12
                                  }
                                },
                                "leadingComments": null
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 12548,
                                "end": 12552,
                                "loc": {
                                  "start": {
                                    "line": 322,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 322,
                                    "column": 17
                                  }
                                },
                                "name": "mesh"
                              },
                              "computed": false,
                              "leadingComments": null
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 12553,
                              "end": 12561,
                              "loc": {
                                "start": {
                                  "line": 322,
                                  "column": 18
                                },
                                "end": {
                                  "line": 322,
                                  "column": 26
                                }
                              },
                              "name": "position"
                            },
                            "computed": false,
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12562,
                            "end": 12566,
                            "loc": {
                              "start": {
                                "line": 322,
                                "column": 27
                              },
                              "end": {
                                "line": 322,
                                "column": 31
                              }
                            },
                            "name": "copy"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 12567,
                            "end": 12591,
                            "loc": {
                              "start": {
                                "line": 322,
                                "column": 32
                              },
                              "end": {
                                "line": 322,
                                "column": 56
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 12567,
                              "end": 12589,
                              "loc": {
                                "start": {
                                  "line": 322,
                                  "column": 32
                                },
                                "end": {
                                  "line": 322,
                                  "column": 54
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 12567,
                                "end": 12571,
                                "loc": {
                                  "start": {
                                    "line": 322,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 322,
                                    "column": 36
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 12572,
                                "end": 12589,
                                "loc": {
                                  "start": {
                                    "line": 322,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 322,
                                    "column": 54
                                  }
                                },
                                "name": "getMiddlePosition"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        ],
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " set position of segment's center",
                          "start": 12498,
                          "end": 12533,
                          "loc": {
                            "start": {
                              "line": 321,
                              "column": 8
                            },
                            "end": {
                              "line": 321,
                              "column": 43
                            }
                          },
                          "range": [
                            12498,
                            12533
                          ]
                        }
                      ]
                    },
                    {
                      "type": "IfStatement",
                      "start": 12603,
                      "end": 12666,
                      "loc": {
                        "start": {
                          "line": 323,
                          "column": 8
                        },
                        "end": {
                          "line": 323,
                          "column": 71
                        }
                      },
                      "test": {
                        "type": "MemberExpression",
                        "start": 12607,
                        "end": 12633,
                        "loc": {
                          "start": {
                            "line": 323,
                            "column": 12
                          },
                          "end": {
                            "line": 323,
                            "column": 38
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 12607,
                          "end": 12611,
                          "loc": {
                            "start": {
                              "line": 323,
                              "column": 12
                            },
                            "end": {
                              "line": 323,
                              "column": 16
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 12612,
                          "end": 12633,
                          "loc": {
                            "start": {
                              "line": 323,
                              "column": 17
                            },
                            "end": {
                              "line": 323,
                              "column": 38
                            }
                          },
                          "name": "auxiliaryConstruction"
                        },
                        "computed": false
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 12635,
                        "end": 12666,
                        "loc": {
                          "start": {
                            "line": 323,
                            "column": 40
                          },
                          "end": {
                            "line": 323,
                            "column": 71
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 12635,
                          "end": 12665,
                          "loc": {
                            "start": {
                              "line": 323,
                              "column": 40
                            },
                            "end": {
                              "line": 323,
                              "column": 70
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 12635,
                            "end": 12663,
                            "loc": {
                              "start": {
                                "line": 323,
                                "column": 40
                              },
                              "end": {
                                "line": 323,
                                "column": 68
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 12635,
                              "end": 12639,
                              "loc": {
                                "start": {
                                  "line": 323,
                                  "column": 40
                                },
                                "end": {
                                  "line": 323,
                                  "column": 44
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 12640,
                              "end": 12663,
                              "loc": {
                                "start": {
                                  "line": 323,
                                  "column": 45
                                },
                                "end": {
                                  "line": 323,
                                  "column": 68
                                }
                              },
                              "name": "updateAuxiliaryGeometry"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      },
                      "alternate": null
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 12681,
              "end": 12811,
              "loc": {
                "start": {
                  "line": 326,
                  "column": 4
                },
                "end": {
                  "line": 328,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 12681,
                "end": 12689,
                "loc": {
                  "start": {
                    "line": 326,
                    "column": 4
                  },
                  "end": {
                    "line": 326,
                    "column": 12
                  }
                },
                "name": "getState"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 12689,
                "end": 12811,
                "loc": {
                  "start": {
                    "line": 326,
                    "column": 12
                  },
                  "end": {
                    "line": 328,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 12692,
                  "end": 12811,
                  "loc": {
                    "start": {
                      "line": 326,
                      "column": 15
                    },
                    "end": {
                      "line": 328,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 12703,
                      "end": 12804,
                      "loc": {
                        "start": {
                          "line": 327,
                          "column": 8
                        },
                        "end": {
                          "line": 327,
                          "column": 109
                        }
                      },
                      "argument": {
                        "type": "NewExpression",
                        "start": 12710,
                        "end": 12803,
                        "loc": {
                          "start": {
                            "line": 327,
                            "column": 15
                          },
                          "end": {
                            "line": 327,
                            "column": 108
                          }
                        },
                        "callee": {
                          "type": "Identifier",
                          "start": 12714,
                          "end": 12717,
                          "loc": {
                            "start": {
                              "line": 327,
                              "column": 19
                            },
                            "end": {
                              "line": 327,
                              "column": 22
                            }
                          },
                          "name": "Map"
                        },
                        "arguments": [
                          {
                            "type": "ArrayExpression",
                            "start": 12718,
                            "end": 12802,
                            "loc": {
                              "start": {
                                "line": 327,
                                "column": 23
                              },
                              "end": {
                                "line": 327,
                                "column": 107
                              }
                            },
                            "elements": [
                              {
                                "type": "ArrayExpression",
                                "start": 12719,
                                "end": 12760,
                                "loc": {
                                  "start": {
                                    "line": 327,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 327,
                                    "column": 65
                                  }
                                },
                                "elements": [
                                  {
                                    "type": "Literal",
                                    "start": 12720,
                                    "end": 12732,
                                    "loc": {
                                      "start": {
                                        "line": 327,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 327,
                                        "column": 37
                                      }
                                    },
                                    "value": "startPoint",
                                    "rawValue": "startPoint",
                                    "raw": "'startPoint'"
                                  },
                                  {
                                    "type": "CallExpression",
                                    "start": 12734,
                                    "end": 12759,
                                    "loc": {
                                      "start": {
                                        "line": 327,
                                        "column": 39
                                      },
                                      "end": {
                                        "line": 327,
                                        "column": 64
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 12734,
                                      "end": 12757,
                                      "loc": {
                                        "start": {
                                          "line": 327,
                                          "column": 39
                                        },
                                        "end": {
                                          "line": 327,
                                          "column": 62
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 12734,
                                        "end": 12748,
                                        "loc": {
                                          "start": {
                                            "line": 327,
                                            "column": 39
                                          },
                                          "end": {
                                            "line": 327,
                                            "column": 53
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 12734,
                                          "end": 12745,
                                          "loc": {
                                            "start": {
                                              "line": 327,
                                              "column": 39
                                            },
                                            "end": {
                                              "line": 327,
                                              "column": 50
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 12734,
                                            "end": 12738,
                                            "loc": {
                                              "start": {
                                                "line": 327,
                                                "column": 39
                                              },
                                              "end": {
                                                "line": 327,
                                                "column": 43
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 12739,
                                            "end": 12745,
                                            "loc": {
                                              "start": {
                                                "line": 327,
                                                "column": 44
                                              },
                                              "end": {
                                                "line": 327,
                                                "column": 50
                                              }
                                            },
                                            "name": "points"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Literal",
                                          "start": 12746,
                                          "end": 12747,
                                          "loc": {
                                            "start": {
                                              "line": 327,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 327,
                                              "column": 52
                                            }
                                          },
                                          "value": 0,
                                          "rawValue": 0,
                                          "raw": "0"
                                        },
                                        "computed": true
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 12749,
                                        "end": 12757,
                                        "loc": {
                                          "start": {
                                            "line": 327,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 327,
                                            "column": 62
                                          }
                                        },
                                        "name": "getState"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                ]
                              },
                              {
                                "type": "ArrayExpression",
                                "start": 12762,
                                "end": 12801,
                                "loc": {
                                  "start": {
                                    "line": 327,
                                    "column": 67
                                  },
                                  "end": {
                                    "line": 327,
                                    "column": 106
                                  }
                                },
                                "elements": [
                                  {
                                    "type": "Literal",
                                    "start": 12763,
                                    "end": 12773,
                                    "loc": {
                                      "start": {
                                        "line": 327,
                                        "column": 68
                                      },
                                      "end": {
                                        "line": 327,
                                        "column": 78
                                      }
                                    },
                                    "value": "endPoint",
                                    "rawValue": "endPoint",
                                    "raw": "'endPoint'"
                                  },
                                  {
                                    "type": "CallExpression",
                                    "start": 12775,
                                    "end": 12800,
                                    "loc": {
                                      "start": {
                                        "line": 327,
                                        "column": 80
                                      },
                                      "end": {
                                        "line": 327,
                                        "column": 105
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 12775,
                                      "end": 12798,
                                      "loc": {
                                        "start": {
                                          "line": 327,
                                          "column": 80
                                        },
                                        "end": {
                                          "line": 327,
                                          "column": 103
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 12775,
                                        "end": 12789,
                                        "loc": {
                                          "start": {
                                            "line": 327,
                                            "column": 80
                                          },
                                          "end": {
                                            "line": 327,
                                            "column": 94
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 12775,
                                          "end": 12786,
                                          "loc": {
                                            "start": {
                                              "line": 327,
                                              "column": 80
                                            },
                                            "end": {
                                              "line": 327,
                                              "column": 91
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 12775,
                                            "end": 12779,
                                            "loc": {
                                              "start": {
                                                "line": 327,
                                                "column": 80
                                              },
                                              "end": {
                                                "line": 327,
                                                "column": 84
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 12780,
                                            "end": 12786,
                                            "loc": {
                                              "start": {
                                                "line": 327,
                                                "column": 85
                                              },
                                              "end": {
                                                "line": 327,
                                                "column": 91
                                              }
                                            },
                                            "name": "points"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Literal",
                                          "start": 12787,
                                          "end": 12788,
                                          "loc": {
                                            "start": {
                                              "line": 327,
                                              "column": 92
                                            },
                                            "end": {
                                              "line": 327,
                                              "column": 93
                                            }
                                          },
                                          "value": 1,
                                          "rawValue": 1,
                                          "raw": "1"
                                        },
                                        "computed": true
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 12790,
                                        "end": 12798,
                                        "loc": {
                                          "start": {
                                            "line": 327,
                                            "column": 95
                                          },
                                          "end": {
                                            "line": 327,
                                            "column": 103
                                          }
                                        },
                                        "name": "getState"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                ]
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 12819,
              "end": 13079,
              "loc": {
                "start": {
                  "line": 330,
                  "column": 4
                },
                "end": {
                  "line": 335,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 12819,
                "end": 12833,
                "loc": {
                  "start": {
                    "line": 330,
                    "column": 4
                  },
                  "end": {
                    "line": 330,
                    "column": 18
                  }
                },
                "name": "applyStateDiff"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 12833,
                "end": 13079,
                "loc": {
                  "start": {
                    "line": 330,
                    "column": 18
                  },
                  "end": {
                    "line": 335,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 12834,
                    "end": 12843,
                    "loc": {
                      "start": {
                        "line": 330,
                        "column": 19
                      },
                      "end": {
                        "line": 330,
                        "column": 28
                      }
                    },
                    "name": "stateDiff"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 12845,
                  "end": 13079,
                  "loc": {
                    "start": {
                      "line": 330,
                      "column": 30
                    },
                    "end": {
                      "line": 335,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 12856,
                      "end": 12961,
                      "loc": {
                        "start": {
                          "line": 331,
                          "column": 8
                        },
                        "end": {
                          "line": 332,
                          "column": 71
                        }
                      },
                      "test": {
                        "type": "CallExpression",
                        "start": 12860,
                        "end": 12887,
                        "loc": {
                          "start": {
                            "line": 331,
                            "column": 12
                          },
                          "end": {
                            "line": 331,
                            "column": 39
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 12860,
                          "end": 12873,
                          "loc": {
                            "start": {
                              "line": 331,
                              "column": 12
                            },
                            "end": {
                              "line": 331,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 12860,
                            "end": 12869,
                            "loc": {
                              "start": {
                                "line": 331,
                                "column": 12
                              },
                              "end": {
                                "line": 331,
                                "column": 21
                              }
                            },
                            "name": "stateDiff"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12870,
                            "end": 12873,
                            "loc": {
                              "start": {
                                "line": 331,
                                "column": 22
                              },
                              "end": {
                                "line": 331,
                                "column": 25
                              }
                            },
                            "name": "has"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 12874,
                            "end": 12886,
                            "loc": {
                              "start": {
                                "line": 331,
                                "column": 26
                              },
                              "end": {
                                "line": 331,
                                "column": 38
                              }
                            },
                            "value": "startPoint",
                            "rawValue": "startPoint",
                            "raw": "'startPoint'"
                          }
                        ]
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 12902,
                        "end": 12961,
                        "loc": {
                          "start": {
                            "line": 332,
                            "column": 12
                          },
                          "end": {
                            "line": 332,
                            "column": 71
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 12902,
                          "end": 12960,
                          "loc": {
                            "start": {
                              "line": 332,
                              "column": 12
                            },
                            "end": {
                              "line": 332,
                              "column": 70
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 12902,
                            "end": 12931,
                            "loc": {
                              "start": {
                                "line": 332,
                                "column": 12
                              },
                              "end": {
                                "line": 332,
                                "column": 41
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 12902,
                              "end": 12916,
                              "loc": {
                                "start": {
                                  "line": 332,
                                  "column": 12
                                },
                                "end": {
                                  "line": 332,
                                  "column": 26
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 12902,
                                "end": 12913,
                                "loc": {
                                  "start": {
                                    "line": 332,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 332,
                                    "column": 23
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 12902,
                                  "end": 12906,
                                  "loc": {
                                    "start": {
                                      "line": 332,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 332,
                                      "column": 16
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 12907,
                                  "end": 12913,
                                  "loc": {
                                    "start": {
                                      "line": 332,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 332,
                                      "column": 23
                                    }
                                  },
                                  "name": "points"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Literal",
                                "start": 12914,
                                "end": 12915,
                                "loc": {
                                  "start": {
                                    "line": 332,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 332,
                                    "column": 25
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0"
                              },
                              "computed": true
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 12917,
                              "end": 12931,
                              "loc": {
                                "start": {
                                  "line": 332,
                                  "column": 27
                                },
                                "end": {
                                  "line": 332,
                                  "column": 41
                                }
                              },
                              "name": "applyStateDiff"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "CallExpression",
                              "start": 12932,
                              "end": 12959,
                              "loc": {
                                "start": {
                                  "line": 332,
                                  "column": 42
                                },
                                "end": {
                                  "line": 332,
                                  "column": 69
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 12932,
                                "end": 12945,
                                "loc": {
                                  "start": {
                                    "line": 332,
                                    "column": 42
                                  },
                                  "end": {
                                    "line": 332,
                                    "column": 55
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 12932,
                                  "end": 12941,
                                  "loc": {
                                    "start": {
                                      "line": 332,
                                      "column": 42
                                    },
                                    "end": {
                                      "line": 332,
                                      "column": 51
                                    }
                                  },
                                  "name": "stateDiff"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 12942,
                                  "end": 12945,
                                  "loc": {
                                    "start": {
                                      "line": 332,
                                      "column": 52
                                    },
                                    "end": {
                                      "line": 332,
                                      "column": 55
                                    }
                                  },
                                  "name": "get"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 12946,
                                  "end": 12958,
                                  "loc": {
                                    "start": {
                                      "line": 332,
                                      "column": 56
                                    },
                                    "end": {
                                      "line": 332,
                                      "column": 68
                                    }
                                  },
                                  "value": "startPoint",
                                  "rawValue": "startPoint",
                                  "raw": "'startPoint'"
                                }
                              ]
                            }
                          ]
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 12971,
                      "end": 13072,
                      "loc": {
                        "start": {
                          "line": 333,
                          "column": 8
                        },
                        "end": {
                          "line": 334,
                          "column": 69
                        }
                      },
                      "test": {
                        "type": "CallExpression",
                        "start": 12975,
                        "end": 13000,
                        "loc": {
                          "start": {
                            "line": 333,
                            "column": 12
                          },
                          "end": {
                            "line": 333,
                            "column": 37
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 12975,
                          "end": 12988,
                          "loc": {
                            "start": {
                              "line": 333,
                              "column": 12
                            },
                            "end": {
                              "line": 333,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 12975,
                            "end": 12984,
                            "loc": {
                              "start": {
                                "line": 333,
                                "column": 12
                              },
                              "end": {
                                "line": 333,
                                "column": 21
                              }
                            },
                            "name": "stateDiff"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12985,
                            "end": 12988,
                            "loc": {
                              "start": {
                                "line": 333,
                                "column": 22
                              },
                              "end": {
                                "line": 333,
                                "column": 25
                              }
                            },
                            "name": "has"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 12989,
                            "end": 12999,
                            "loc": {
                              "start": {
                                "line": 333,
                                "column": 26
                              },
                              "end": {
                                "line": 333,
                                "column": 36
                              }
                            },
                            "value": "endPoint",
                            "rawValue": "endPoint",
                            "raw": "'endPoint'"
                          }
                        ]
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 13015,
                        "end": 13072,
                        "loc": {
                          "start": {
                            "line": 334,
                            "column": 12
                          },
                          "end": {
                            "line": 334,
                            "column": 69
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 13015,
                          "end": 13071,
                          "loc": {
                            "start": {
                              "line": 334,
                              "column": 12
                            },
                            "end": {
                              "line": 334,
                              "column": 68
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 13015,
                            "end": 13044,
                            "loc": {
                              "start": {
                                "line": 334,
                                "column": 12
                              },
                              "end": {
                                "line": 334,
                                "column": 41
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 13015,
                              "end": 13029,
                              "loc": {
                                "start": {
                                  "line": 334,
                                  "column": 12
                                },
                                "end": {
                                  "line": 334,
                                  "column": 26
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 13015,
                                "end": 13026,
                                "loc": {
                                  "start": {
                                    "line": 334,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 334,
                                    "column": 23
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 13015,
                                  "end": 13019,
                                  "loc": {
                                    "start": {
                                      "line": 334,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 334,
                                      "column": 16
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 13020,
                                  "end": 13026,
                                  "loc": {
                                    "start": {
                                      "line": 334,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 334,
                                      "column": 23
                                    }
                                  },
                                  "name": "points"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Literal",
                                "start": 13027,
                                "end": 13028,
                                "loc": {
                                  "start": {
                                    "line": 334,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 334,
                                    "column": 25
                                  }
                                },
                                "value": 1,
                                "rawValue": 1,
                                "raw": "1"
                              },
                              "computed": true
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 13030,
                              "end": 13044,
                              "loc": {
                                "start": {
                                  "line": 334,
                                  "column": 27
                                },
                                "end": {
                                  "line": 334,
                                  "column": 41
                                }
                              },
                              "name": "applyStateDiff"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "CallExpression",
                              "start": 13045,
                              "end": 13070,
                              "loc": {
                                "start": {
                                  "line": 334,
                                  "column": 42
                                },
                                "end": {
                                  "line": 334,
                                  "column": 67
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 13045,
                                "end": 13058,
                                "loc": {
                                  "start": {
                                    "line": 334,
                                    "column": 42
                                  },
                                  "end": {
                                    "line": 334,
                                    "column": 55
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 13045,
                                  "end": 13054,
                                  "loc": {
                                    "start": {
                                      "line": 334,
                                      "column": 42
                                    },
                                    "end": {
                                      "line": 334,
                                      "column": 51
                                    }
                                  },
                                  "name": "stateDiff"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 13055,
                                  "end": 13058,
                                  "loc": {
                                    "start": {
                                      "line": 334,
                                      "column": 52
                                    },
                                    "end": {
                                      "line": 334,
                                      "column": 55
                                    }
                                  },
                                  "name": "get"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 13059,
                                  "end": 13069,
                                  "loc": {
                                    "start": {
                                      "line": 334,
                                      "column": 56
                                    },
                                    "end": {
                                      "line": 334,
                                      "column": 66
                                    }
                                  },
                                  "value": "endPoint",
                                  "rawValue": "endPoint",
                                  "raw": "'endPoint'"
                                }
                              ]
                            }
                          ]
                        }
                      },
                      "alternate": null
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 13087,
              "end": 13405,
              "loc": {
                "start": {
                  "line": 337,
                  "column": 4
                },
                "end": {
                  "line": 344,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 13087,
                "end": 13099,
                "loc": {
                  "start": {
                    "line": 337,
                    "column": 4
                  },
                  "end": {
                    "line": 337,
                    "column": 16
                  }
                },
                "name": "addStateDiff"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 13099,
                "end": 13405,
                "loc": {
                  "start": {
                    "line": 337,
                    "column": 16
                  },
                  "end": {
                    "line": 344,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 13100,
                    "end": 13109,
                    "loc": {
                      "start": {
                        "line": 337,
                        "column": 17
                      },
                      "end": {
                        "line": 337,
                        "column": 26
                      }
                    },
                    "name": "stateDiff"
                  },
                  {
                    "type": "Identifier",
                    "start": 13111,
                    "end": 13116,
                    "loc": {
                      "start": {
                        "line": 337,
                        "column": 28
                      },
                      "end": {
                        "line": 337,
                        "column": 33
                      }
                    },
                    "name": "alpha"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 13118,
                  "end": 13405,
                  "loc": {
                    "start": {
                      "line": 337,
                      "column": 35
                    },
                    "end": {
                      "line": 344,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 13129,
                      "end": 13160,
                      "loc": {
                        "start": {
                          "line": 338,
                          "column": 8
                        },
                        "end": {
                          "line": 338,
                          "column": 39
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 13133,
                        "end": 13151,
                        "loc": {
                          "start": {
                            "line": 338,
                            "column": 12
                          },
                          "end": {
                            "line": 338,
                            "column": 30
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 13133,
                          "end": 13142,
                          "loc": {
                            "start": {
                              "line": 338,
                              "column": 12
                            },
                            "end": {
                              "line": 338,
                              "column": 21
                            }
                          },
                          "name": "stateDiff"
                        },
                        "operator": "===",
                        "right": {
                          "type": "Literal",
                          "start": 13147,
                          "end": 13151,
                          "loc": {
                            "start": {
                              "line": 338,
                              "column": 26
                            },
                            "end": {
                              "line": 338,
                              "column": 30
                            }
                          },
                          "value": null,
                          "rawValue": null,
                          "raw": "null"
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 13153,
                        "end": 13160,
                        "loc": {
                          "start": {
                            "line": 338,
                            "column": 32
                          },
                          "end": {
                            "line": 338,
                            "column": 39
                          }
                        },
                        "argument": null
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 13172,
                      "end": 13282,
                      "loc": {
                        "start": {
                          "line": 340,
                          "column": 8
                        },
                        "end": {
                          "line": 341,
                          "column": 76
                        }
                      },
                      "test": {
                        "type": "CallExpression",
                        "start": 13176,
                        "end": 13203,
                        "loc": {
                          "start": {
                            "line": 340,
                            "column": 12
                          },
                          "end": {
                            "line": 340,
                            "column": 39
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 13176,
                          "end": 13189,
                          "loc": {
                            "start": {
                              "line": 340,
                              "column": 12
                            },
                            "end": {
                              "line": 340,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 13176,
                            "end": 13185,
                            "loc": {
                              "start": {
                                "line": 340,
                                "column": 12
                              },
                              "end": {
                                "line": 340,
                                "column": 21
                              }
                            },
                            "name": "stateDiff"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13186,
                            "end": 13189,
                            "loc": {
                              "start": {
                                "line": 340,
                                "column": 22
                              },
                              "end": {
                                "line": 340,
                                "column": 25
                              }
                            },
                            "name": "has"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 13190,
                            "end": 13202,
                            "loc": {
                              "start": {
                                "line": 340,
                                "column": 26
                              },
                              "end": {
                                "line": 340,
                                "column": 38
                              }
                            },
                            "value": "startPoint",
                            "rawValue": "startPoint",
                            "raw": "'startPoint'"
                          }
                        ]
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 13218,
                        "end": 13282,
                        "loc": {
                          "start": {
                            "line": 341,
                            "column": 12
                          },
                          "end": {
                            "line": 341,
                            "column": 76
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 13218,
                          "end": 13281,
                          "loc": {
                            "start": {
                              "line": 341,
                              "column": 12
                            },
                            "end": {
                              "line": 341,
                              "column": 75
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 13218,
                            "end": 13245,
                            "loc": {
                              "start": {
                                "line": 341,
                                "column": 12
                              },
                              "end": {
                                "line": 341,
                                "column": 39
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 13218,
                              "end": 13232,
                              "loc": {
                                "start": {
                                  "line": 341,
                                  "column": 12
                                },
                                "end": {
                                  "line": 341,
                                  "column": 26
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 13218,
                                "end": 13229,
                                "loc": {
                                  "start": {
                                    "line": 341,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 341,
                                    "column": 23
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 13218,
                                  "end": 13222,
                                  "loc": {
                                    "start": {
                                      "line": 341,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 341,
                                      "column": 16
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 13223,
                                  "end": 13229,
                                  "loc": {
                                    "start": {
                                      "line": 341,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 341,
                                      "column": 23
                                    }
                                  },
                                  "name": "points"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Literal",
                                "start": 13230,
                                "end": 13231,
                                "loc": {
                                  "start": {
                                    "line": 341,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 341,
                                    "column": 25
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0"
                              },
                              "computed": true
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 13233,
                              "end": 13245,
                              "loc": {
                                "start": {
                                  "line": 341,
                                  "column": 27
                                },
                                "end": {
                                  "line": 341,
                                  "column": 39
                                }
                              },
                              "name": "addStateDiff"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "CallExpression",
                              "start": 13246,
                              "end": 13273,
                              "loc": {
                                "start": {
                                  "line": 341,
                                  "column": 40
                                },
                                "end": {
                                  "line": 341,
                                  "column": 67
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 13246,
                                "end": 13259,
                                "loc": {
                                  "start": {
                                    "line": 341,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 341,
                                    "column": 53
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 13246,
                                  "end": 13255,
                                  "loc": {
                                    "start": {
                                      "line": 341,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 341,
                                      "column": 49
                                    }
                                  },
                                  "name": "stateDiff"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 13256,
                                  "end": 13259,
                                  "loc": {
                                    "start": {
                                      "line": 341,
                                      "column": 50
                                    },
                                    "end": {
                                      "line": 341,
                                      "column": 53
                                    }
                                  },
                                  "name": "get"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 13260,
                                  "end": 13272,
                                  "loc": {
                                    "start": {
                                      "line": 341,
                                      "column": 54
                                    },
                                    "end": {
                                      "line": 341,
                                      "column": 66
                                    }
                                  },
                                  "value": "startPoint",
                                  "rawValue": "startPoint",
                                  "raw": "'startPoint'"
                                }
                              ]
                            },
                            {
                              "type": "Identifier",
                              "start": 13275,
                              "end": 13280,
                              "loc": {
                                "start": {
                                  "line": 341,
                                  "column": 69
                                },
                                "end": {
                                  "line": 341,
                                  "column": 74
                                }
                              },
                              "name": "alpha"
                            }
                          ]
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 13292,
                      "end": 13398,
                      "loc": {
                        "start": {
                          "line": 342,
                          "column": 8
                        },
                        "end": {
                          "line": 343,
                          "column": 74
                        }
                      },
                      "test": {
                        "type": "CallExpression",
                        "start": 13296,
                        "end": 13321,
                        "loc": {
                          "start": {
                            "line": 342,
                            "column": 12
                          },
                          "end": {
                            "line": 342,
                            "column": 37
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 13296,
                          "end": 13309,
                          "loc": {
                            "start": {
                              "line": 342,
                              "column": 12
                            },
                            "end": {
                              "line": 342,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 13296,
                            "end": 13305,
                            "loc": {
                              "start": {
                                "line": 342,
                                "column": 12
                              },
                              "end": {
                                "line": 342,
                                "column": 21
                              }
                            },
                            "name": "stateDiff"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13306,
                            "end": 13309,
                            "loc": {
                              "start": {
                                "line": 342,
                                "column": 22
                              },
                              "end": {
                                "line": 342,
                                "column": 25
                              }
                            },
                            "name": "has"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 13310,
                            "end": 13320,
                            "loc": {
                              "start": {
                                "line": 342,
                                "column": 26
                              },
                              "end": {
                                "line": 342,
                                "column": 36
                              }
                            },
                            "value": "endPoint",
                            "rawValue": "endPoint",
                            "raw": "'endPoint'"
                          }
                        ]
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 13336,
                        "end": 13398,
                        "loc": {
                          "start": {
                            "line": 343,
                            "column": 12
                          },
                          "end": {
                            "line": 343,
                            "column": 74
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 13336,
                          "end": 13397,
                          "loc": {
                            "start": {
                              "line": 343,
                              "column": 12
                            },
                            "end": {
                              "line": 343,
                              "column": 73
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 13336,
                            "end": 13363,
                            "loc": {
                              "start": {
                                "line": 343,
                                "column": 12
                              },
                              "end": {
                                "line": 343,
                                "column": 39
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 13336,
                              "end": 13350,
                              "loc": {
                                "start": {
                                  "line": 343,
                                  "column": 12
                                },
                                "end": {
                                  "line": 343,
                                  "column": 26
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 13336,
                                "end": 13347,
                                "loc": {
                                  "start": {
                                    "line": 343,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 343,
                                    "column": 23
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 13336,
                                  "end": 13340,
                                  "loc": {
                                    "start": {
                                      "line": 343,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 343,
                                      "column": 16
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 13341,
                                  "end": 13347,
                                  "loc": {
                                    "start": {
                                      "line": 343,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 343,
                                      "column": 23
                                    }
                                  },
                                  "name": "points"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Literal",
                                "start": 13348,
                                "end": 13349,
                                "loc": {
                                  "start": {
                                    "line": 343,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 343,
                                    "column": 25
                                  }
                                },
                                "value": 1,
                                "rawValue": 1,
                                "raw": "1"
                              },
                              "computed": true
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 13351,
                              "end": 13363,
                              "loc": {
                                "start": {
                                  "line": 343,
                                  "column": 27
                                },
                                "end": {
                                  "line": 343,
                                  "column": 39
                                }
                              },
                              "name": "addStateDiff"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "CallExpression",
                              "start": 13364,
                              "end": 13389,
                              "loc": {
                                "start": {
                                  "line": 343,
                                  "column": 40
                                },
                                "end": {
                                  "line": 343,
                                  "column": 65
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 13364,
                                "end": 13377,
                                "loc": {
                                  "start": {
                                    "line": 343,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 343,
                                    "column": 53
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 13364,
                                  "end": 13373,
                                  "loc": {
                                    "start": {
                                      "line": 343,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 343,
                                      "column": 49
                                    }
                                  },
                                  "name": "stateDiff"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 13374,
                                  "end": 13377,
                                  "loc": {
                                    "start": {
                                      "line": 343,
                                      "column": 50
                                    },
                                    "end": {
                                      "line": 343,
                                      "column": 53
                                    }
                                  },
                                  "name": "get"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 13378,
                                  "end": 13388,
                                  "loc": {
                                    "start": {
                                      "line": 343,
                                      "column": 54
                                    },
                                    "end": {
                                      "line": 343,
                                      "column": 64
                                    }
                                  },
                                  "value": "endPoint",
                                  "rawValue": "endPoint",
                                  "raw": "'endPoint'"
                                }
                              ]
                            },
                            {
                              "type": "Identifier",
                              "start": 13391,
                              "end": 13396,
                              "loc": {
                                "start": {
                                  "line": 343,
                                  "column": 67
                                },
                                "end": {
                                  "line": 343,
                                  "column": 72
                                }
                              },
                              "name": "alpha"
                            }
                          ]
                        }
                      },
                      "alternate": null
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 13413,
              "end": 13634,
              "loc": {
                "start": {
                  "line": 346,
                  "column": 4
                },
                "end": {
                  "line": 352,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 13413,
                "end": 13431,
                "loc": {
                  "start": {
                    "line": 346,
                    "column": 4
                  },
                  "end": {
                    "line": 346,
                    "column": 22
                  }
                },
                "name": "prepareAddOnServer"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 13431,
                "end": 13634,
                "loc": {
                  "start": {
                    "line": 346,
                    "column": 22
                  },
                  "end": {
                    "line": 352,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 13432,
                    "end": 13438,
                    "loc": {
                      "start": {
                        "line": 346,
                        "column": 23
                      },
                      "end": {
                        "line": 346,
                        "column": 29
                      }
                    },
                    "name": "sketch"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 13440,
                  "end": 13634,
                  "loc": {
                    "start": {
                      "line": 346,
                      "column": 31
                    },
                    "end": {
                      "line": 352,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 13451,
                      "end": 13627,
                      "loc": {
                        "start": {
                          "line": 347,
                          "column": 8
                        },
                        "end": {
                          "line": 351,
                          "column": 31
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 13458,
                        "end": 13626,
                        "loc": {
                          "start": {
                            "line": 347,
                            "column": 15
                          },
                          "end": {
                            "line": 351,
                            "column": 30
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 13458,
                          "end": 13611,
                          "loc": {
                            "start": {
                              "line": 347,
                              "column": 15
                            },
                            "end": {
                              "line": 351,
                              "column": 15
                            }
                          },
                          "object": {
                            "type": "CallExpression",
                            "start": 13458,
                            "end": 13606,
                            "loc": {
                              "start": {
                                "line": 347,
                                "column": 15
                              },
                              "end": {
                                "line": 351,
                                "column": 10
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 13458,
                              "end": 13478,
                              "loc": {
                                "start": {
                                  "line": 347,
                                  "column": 15
                                },
                                "end": {
                                  "line": 347,
                                  "column": 35
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 13458,
                                "end": 13467,
                                "loc": {
                                  "start": {
                                    "line": 347,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 347,
                                    "column": 24
                                  }
                                },
                                "name": "Statement"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 13468,
                                "end": 13478,
                                "loc": {
                                  "start": {
                                    "line": 347,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 347,
                                    "column": 35
                                  }
                                },
                                "name": "JSONExport"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "CallExpression",
                                "start": 13479,
                                "end": 13605,
                                "loc": {
                                  "start": {
                                    "line": 347,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 351,
                                    "column": 9
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 13479,
                                  "end": 13497,
                                  "loc": {
                                    "start": {
                                      "line": 347,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 347,
                                      "column": 54
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 13479,
                                    "end": 13489,
                                    "loc": {
                                      "start": {
                                        "line": 347,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 347,
                                        "column": 46
                                      }
                                    },
                                    "name": "Expression"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 13490,
                                    "end": 13497,
                                    "loc": {
                                      "start": {
                                        "line": 347,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 347,
                                        "column": 54
                                      }
                                    },
                                    "name": "AddLine"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 13512,
                                    "end": 13518,
                                    "loc": {
                                      "start": {
                                        "line": 348,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 348,
                                        "column": 18
                                      }
                                    },
                                    "name": "sketch"
                                  },
                                  {
                                    "type": "MemberExpression",
                                    "start": 13533,
                                    "end": 13556,
                                    "loc": {
                                      "start": {
                                        "line": 349,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 349,
                                        "column": 35
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 13533,
                                      "end": 13547,
                                      "loc": {
                                        "start": {
                                          "line": 349,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 349,
                                          "column": 26
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 13533,
                                        "end": 13544,
                                        "loc": {
                                          "start": {
                                            "line": 349,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 349,
                                            "column": 23
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 13533,
                                          "end": 13537,
                                          "loc": {
                                            "start": {
                                              "line": 349,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 349,
                                              "column": 16
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 13538,
                                          "end": 13544,
                                          "loc": {
                                            "start": {
                                              "line": 349,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 349,
                                              "column": 23
                                            }
                                          },
                                          "name": "points"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Literal",
                                        "start": 13545,
                                        "end": 13546,
                                        "loc": {
                                          "start": {
                                            "line": 349,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 349,
                                            "column": 25
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      "computed": true
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 13548,
                                      "end": 13556,
                                      "loc": {
                                        "start": {
                                          "line": 349,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 349,
                                          "column": 35
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  },
                                  {
                                    "type": "MemberExpression",
                                    "start": 13571,
                                    "end": 13594,
                                    "loc": {
                                      "start": {
                                        "line": 350,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 350,
                                        "column": 35
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 13571,
                                      "end": 13585,
                                      "loc": {
                                        "start": {
                                          "line": 350,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 350,
                                          "column": 26
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 13571,
                                        "end": 13582,
                                        "loc": {
                                          "start": {
                                            "line": 350,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 350,
                                            "column": 23
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 13571,
                                          "end": 13575,
                                          "loc": {
                                            "start": {
                                              "line": 350,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 350,
                                              "column": 16
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 13576,
                                          "end": 13582,
                                          "loc": {
                                            "start": {
                                              "line": 350,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 350,
                                              "column": 23
                                            }
                                          },
                                          "name": "points"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Literal",
                                        "start": 13583,
                                        "end": 13584,
                                        "loc": {
                                          "start": {
                                            "line": 350,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 350,
                                            "column": 25
                                          }
                                        },
                                        "value": 1,
                                        "rawValue": 1,
                                        "raw": "1"
                                      },
                                      "computed": true
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 13586,
                                      "end": 13594,
                                      "loc": {
                                        "start": {
                                          "line": 350,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 350,
                                          "column": 35
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  }
                                ]
                              }
                            ]
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13607,
                            "end": 13611,
                            "loc": {
                              "start": {
                                "line": 351,
                                "column": 11
                              },
                              "end": {
                                "line": 351,
                                "column": 15
                              }
                            },
                            "name": "then"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 13612,
                            "end": 13625,
                            "loc": {
                              "start": {
                                "line": 351,
                                "column": 16
                              },
                              "end": {
                                "line": 351,
                                "column": 29
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 13612,
                              "end": 13619,
                              "loc": {
                                "start": {
                                  "line": 351,
                                  "column": 16
                                },
                                "end": {
                                  "line": 351,
                                  "column": 23
                                }
                              },
                              "name": "parseTo"
                            },
                            "arguments": [
                              {
                                "type": "ThisExpression",
                                "start": 13620,
                                "end": 13624,
                                "loc": {
                                  "start": {
                                    "line": 351,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 351,
                                    "column": 28
                                  }
                                }
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 13642,
              "end": 13888,
              "loc": {
                "start": {
                  "line": 354,
                  "column": 4
                },
                "end": {
                  "line": 361,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 13642,
                "end": 13663,
                "loc": {
                  "start": {
                    "line": 354,
                    "column": 4
                  },
                  "end": {
                    "line": 354,
                    "column": 25
                  }
                },
                "name": "prepareUpdateToServer"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 13663,
                "end": 13888,
                "loc": {
                  "start": {
                    "line": 354,
                    "column": 25
                  },
                  "end": {
                    "line": 361,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 13664,
                    "end": 13670,
                    "loc": {
                      "start": {
                        "line": 354,
                        "column": 26
                      },
                      "end": {
                        "line": 354,
                        "column": 32
                      }
                    },
                    "name": "sketch"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 13672,
                  "end": 13888,
                  "loc": {
                    "start": {
                      "line": 354,
                      "column": 34
                    },
                    "end": {
                      "line": 361,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 13683,
                      "end": 13881,
                      "loc": {
                        "start": {
                          "line": 355,
                          "column": 8
                        },
                        "end": {
                          "line": 360,
                          "column": 31
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 13690,
                        "end": 13880,
                        "loc": {
                          "start": {
                            "line": 355,
                            "column": 15
                          },
                          "end": {
                            "line": 360,
                            "column": 30
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 13690,
                          "end": 13865,
                          "loc": {
                            "start": {
                              "line": 355,
                              "column": 15
                            },
                            "end": {
                              "line": 360,
                              "column": 15
                            }
                          },
                          "object": {
                            "type": "CallExpression",
                            "start": 13690,
                            "end": 13860,
                            "loc": {
                              "start": {
                                "line": 355,
                                "column": 15
                              },
                              "end": {
                                "line": 360,
                                "column": 10
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 13690,
                              "end": 13710,
                              "loc": {
                                "start": {
                                  "line": 355,
                                  "column": 15
                                },
                                "end": {
                                  "line": 355,
                                  "column": 35
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 13690,
                                "end": 13699,
                                "loc": {
                                  "start": {
                                    "line": 355,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 355,
                                    "column": 24
                                  }
                                },
                                "name": "Statement"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 13700,
                                "end": 13710,
                                "loc": {
                                  "start": {
                                    "line": 355,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 355,
                                    "column": 35
                                  }
                                },
                                "name": "JSONExport"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "CallExpression",
                                "start": 13711,
                                "end": 13859,
                                "loc": {
                                  "start": {
                                    "line": 355,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 360,
                                    "column": 9
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 13711,
                                  "end": 13732,
                                  "loc": {
                                    "start": {
                                      "line": 355,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 355,
                                      "column": 57
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 13711,
                                    "end": 13721,
                                    "loc": {
                                      "start": {
                                        "line": 355,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 355,
                                        "column": 46
                                      }
                                    },
                                    "name": "Expression"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 13722,
                                    "end": 13732,
                                    "loc": {
                                      "start": {
                                        "line": 355,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 355,
                                        "column": 57
                                      }
                                    },
                                    "name": "UpdateLine"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 13747,
                                    "end": 13753,
                                    "loc": {
                                      "start": {
                                        "line": 356,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 356,
                                        "column": 18
                                      }
                                    },
                                    "name": "sketch"
                                  },
                                  {
                                    "type": "ThisExpression",
                                    "start": 13768,
                                    "end": 13772,
                                    "loc": {
                                      "start": {
                                        "line": 357,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 357,
                                        "column": 16
                                      }
                                    }
                                  },
                                  {
                                    "type": "MemberExpression",
                                    "start": 13787,
                                    "end": 13810,
                                    "loc": {
                                      "start": {
                                        "line": 358,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 358,
                                        "column": 35
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 13787,
                                      "end": 13801,
                                      "loc": {
                                        "start": {
                                          "line": 358,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 358,
                                          "column": 26
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 13787,
                                        "end": 13798,
                                        "loc": {
                                          "start": {
                                            "line": 358,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 358,
                                            "column": 23
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 13787,
                                          "end": 13791,
                                          "loc": {
                                            "start": {
                                              "line": 358,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 358,
                                              "column": 16
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 13792,
                                          "end": 13798,
                                          "loc": {
                                            "start": {
                                              "line": 358,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 358,
                                              "column": 23
                                            }
                                          },
                                          "name": "points"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Literal",
                                        "start": 13799,
                                        "end": 13800,
                                        "loc": {
                                          "start": {
                                            "line": 358,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 358,
                                            "column": 25
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      "computed": true
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 13802,
                                      "end": 13810,
                                      "loc": {
                                        "start": {
                                          "line": 358,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 358,
                                          "column": 35
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  },
                                  {
                                    "type": "MemberExpression",
                                    "start": 13825,
                                    "end": 13848,
                                    "loc": {
                                      "start": {
                                        "line": 359,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 359,
                                        "column": 35
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 13825,
                                      "end": 13839,
                                      "loc": {
                                        "start": {
                                          "line": 359,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 359,
                                          "column": 26
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 13825,
                                        "end": 13836,
                                        "loc": {
                                          "start": {
                                            "line": 359,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 359,
                                            "column": 23
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 13825,
                                          "end": 13829,
                                          "loc": {
                                            "start": {
                                              "line": 359,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 359,
                                              "column": 16
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 13830,
                                          "end": 13836,
                                          "loc": {
                                            "start": {
                                              "line": 359,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 359,
                                              "column": 23
                                            }
                                          },
                                          "name": "points"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Literal",
                                        "start": 13837,
                                        "end": 13838,
                                        "loc": {
                                          "start": {
                                            "line": 359,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 359,
                                            "column": 25
                                          }
                                        },
                                        "value": 1,
                                        "rawValue": 1,
                                        "raw": "1"
                                      },
                                      "computed": true
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 13840,
                                      "end": 13848,
                                      "loc": {
                                        "start": {
                                          "line": 359,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 359,
                                          "column": 35
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  }
                                ]
                              }
                            ]
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13861,
                            "end": 13865,
                            "loc": {
                              "start": {
                                "line": 360,
                                "column": 11
                              },
                              "end": {
                                "line": 360,
                                "column": 15
                              }
                            },
                            "name": "then"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 13866,
                            "end": 13879,
                            "loc": {
                              "start": {
                                "line": 360,
                                "column": 16
                              },
                              "end": {
                                "line": 360,
                                "column": 29
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 13866,
                              "end": 13873,
                              "loc": {
                                "start": {
                                  "line": 360,
                                  "column": 16
                                },
                                "end": {
                                  "line": 360,
                                  "column": 23
                                }
                              },
                              "name": "parseTo"
                            },
                            "arguments": [
                              {
                                "type": "ThisExpression",
                                "start": 13874,
                                "end": 13878,
                                "loc": {
                                  "start": {
                                    "line": 360,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 360,
                                    "column": 28
                                  }
                                }
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 13896,
              "end": 14005,
              "loc": {
                "start": {
                  "line": 363,
                  "column": 4
                },
                "end": {
                  "line": 365,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 13896,
                "end": 13917,
                "loc": {
                  "start": {
                    "line": 363,
                    "column": 4
                  },
                  "end": {
                    "line": 363,
                    "column": 25
                  }
                },
                "name": "prepareRemoveOnServer"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 13917,
                "end": 14005,
                "loc": {
                  "start": {
                    "line": 363,
                    "column": 25
                  },
                  "end": {
                    "line": 365,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 13918,
                    "end": 13924,
                    "loc": {
                      "start": {
                        "line": 363,
                        "column": 26
                      },
                      "end": {
                        "line": 363,
                        "column": 32
                      }
                    },
                    "name": "sketch"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 13926,
                  "end": 14005,
                  "loc": {
                    "start": {
                      "line": 363,
                      "column": 34
                    },
                    "end": {
                      "line": 365,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 13937,
                      "end": 13998,
                      "loc": {
                        "start": {
                          "line": 364,
                          "column": 8
                        },
                        "end": {
                          "line": 364,
                          "column": 69
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 13944,
                        "end": 13997,
                        "loc": {
                          "start": {
                            "line": 364,
                            "column": 15
                          },
                          "end": {
                            "line": 364,
                            "column": 68
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 13944,
                          "end": 13960,
                          "loc": {
                            "start": {
                              "line": 364,
                              "column": 15
                            },
                            "end": {
                              "line": 364,
                              "column": 31
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 13944,
                            "end": 13953,
                            "loc": {
                              "start": {
                                "line": 364,
                                "column": 15
                              },
                              "end": {
                                "line": 364,
                                "column": 24
                              }
                            },
                            "name": "Statement"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13954,
                            "end": 13960,
                            "loc": {
                              "start": {
                                "line": 364,
                                "column": 25
                              },
                              "end": {
                                "line": 364,
                                "column": 31
                              }
                            },
                            "name": "Return"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 13961,
                            "end": 13996,
                            "loc": {
                              "start": {
                                "line": 364,
                                "column": 32
                              },
                              "end": {
                                "line": 364,
                                "column": 67
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 13961,
                              "end": 13982,
                              "loc": {
                                "start": {
                                  "line": 364,
                                  "column": 32
                                },
                                "end": {
                                  "line": 364,
                                  "column": 53
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 13961,
                                "end": 13971,
                                "loc": {
                                  "start": {
                                    "line": 364,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 364,
                                    "column": 42
                                  }
                                },
                                "name": "Expression"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 13972,
                                "end": 13982,
                                "loc": {
                                  "start": {
                                    "line": 364,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 364,
                                    "column": 53
                                  }
                                },
                                "name": "RemoveLine"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 13983,
                                "end": 13989,
                                "loc": {
                                  "start": {
                                    "line": 364,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 364,
                                    "column": 60
                                  }
                                },
                                "name": "sketch"
                              },
                              {
                                "type": "ThisExpression",
                                "start": 13991,
                                "end": 13995,
                                "loc": {
                                  "start": {
                                    "line": 364,
                                    "column": 62
                                  },
                                  "end": {
                                    "line": 364,
                                    "column": 66
                                  }
                                }
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            }
          ]
        },
        "leadingComments": [
          {
            "type": "CommentLine",
            "value": "================================ Sketch.Line =========================================",
            "start": 6836,
            "end": 6924,
            "loc": {
              "start": {
                "line": 185,
                "column": 0
              },
              "end": {
                "line": 185,
                "column": 88
              }
            },
            "range": [
              6836,
              6924
            ]
          }
        ],
        "trailingComments": []
      },
      "specifiers": [],
      "source": null,
      "leadingComments": [
        {
          "type": "CommentLine",
          "value": "================================ Sketch.Line =========================================",
          "start": 6836,
          "end": 6924,
          "loc": {
            "start": {
              "line": 185,
              "column": 0
            },
            "end": {
              "line": 185,
              "column": 88
            }
          },
          "range": [
            6836,
            6924
          ]
        }
      ]
    },
    {
      "type": "ExpressionStatement",
      "start": 14010,
      "end": 14056,
      "loc": {
        "start": {
          "line": 367,
          "column": 0
        },
        "end": {
          "line": 367,
          "column": 46
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 14010,
        "end": 14055,
        "loc": {
          "start": {
            "line": 367,
            "column": 0
          },
          "end": {
            "line": 367,
            "column": 45
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 14010,
          "end": 14048,
          "loc": {
            "start": {
              "line": 367,
              "column": 0
            },
            "end": {
              "line": 367,
              "column": 38
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 14010,
            "end": 14037,
            "loc": {
              "start": {
                "line": 367,
                "column": 0
              },
              "end": {
                "line": 367,
                "column": 27
              }
            },
            "object": {
              "type": "Identifier",
              "start": 14010,
              "end": 14024,
              "loc": {
                "start": {
                  "line": 367,
                  "column": 0
                },
                "end": {
                  "line": 367,
                  "column": 14
                }
              },
              "name": "ClassCadObject"
            },
            "property": {
              "type": "Identifier",
              "start": 14025,
              "end": 14037,
              "loc": {
                "start": {
                  "line": 367,
                  "column": 15
                },
                "end": {
                  "line": 367,
                  "column": 27
                }
              },
              "name": "classMapping"
            },
            "computed": false
          },
          "property": {
            "type": "Literal",
            "start": 14038,
            "end": 14047,
            "loc": {
              "start": {
                "line": 367,
                "column": 28
              },
              "end": {
                "line": 367,
                "column": 37
              }
            },
            "value": "CC_Line",
            "rawValue": "CC_Line",
            "raw": "'CC_Line'"
          },
          "computed": true
        },
        "right": {
          "type": "Identifier",
          "start": 14051,
          "end": 14055,
          "loc": {
            "start": {
              "line": 367,
              "column": 41
            },
            "end": {
              "line": 367,
              "column": 45
            }
          },
          "name": "Line"
        }
      },
      "trailingComments": [
        {
          "type": "CommentLine",
          "value": "================================ Sketch.Arc =========================================",
          "start": 14060,
          "end": 14147,
          "loc": {
            "start": {
              "line": 369,
              "column": 0
            },
            "end": {
              "line": 369,
              "column": 87
            }
          },
          "range": [
            14060,
            14147
          ]
        }
      ]
    },
    {
      "type": "ExportNamedDeclaration",
      "start": 14149,
      "end": 25337,
      "loc": {
        "start": {
          "line": 370,
          "column": 0
        },
        "end": {
          "line": 636,
          "column": 1
        }
      },
      "declaration": {
        "type": "ClassDeclaration",
        "start": 14156,
        "end": 25337,
        "loc": {
          "start": {
            "line": 370,
            "column": 7
          },
          "end": {
            "line": 636,
            "column": 1
          }
        },
        "id": {
          "type": "Identifier",
          "start": 14162,
          "end": 14165,
          "loc": {
            "start": {
              "line": 370,
              "column": 13
            },
            "end": {
              "line": 370,
              "column": 16
            }
          },
          "name": "Arc",
          "leadingComments": null
        },
        "superClass": {
          "type": "Identifier",
          "start": 14174,
          "end": 14189,
          "loc": {
            "start": {
              "line": 370,
              "column": 25
            },
            "end": {
              "line": 370,
              "column": 40
            }
          },
          "name": "GeometricObject"
        },
        "body": {
          "type": "ClassBody",
          "start": 14190,
          "end": 25337,
          "loc": {
            "start": {
              "line": 370,
              "column": 41
            },
            "end": {
              "line": 636,
              "column": 1
            }
          },
          "body": [
            {
              "type": "MethodDefinition",
              "start": 14197,
              "end": 15856,
              "loc": {
                "start": {
                  "line": 371,
                  "column": 4
                },
                "end": {
                  "line": 407,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 14197,
                "end": 14208,
                "loc": {
                  "start": {
                    "line": 371,
                    "column": 4
                  },
                  "end": {
                    "line": 371,
                    "column": 15
                  }
                },
                "name": "constructor"
              },
              "static": false,
              "kind": "constructor",
              "value": {
                "type": "FunctionExpression",
                "start": 14208,
                "end": 15856,
                "loc": {
                  "start": {
                    "line": 371,
                    "column": 15
                  },
                  "end": {
                    "line": 407,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 14209,
                    "end": 14218,
                    "loc": {
                      "start": {
                        "line": 371,
                        "column": 16
                      },
                      "end": {
                        "line": 371,
                        "column": 25
                      }
                    },
                    "name": "pointSize"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 14220,
                  "end": 15856,
                  "loc": {
                    "start": {
                      "line": 371,
                      "column": 27
                    },
                    "end": {
                      "line": 407,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 14231,
                      "end": 14239,
                      "loc": {
                        "start": {
                          "line": 372,
                          "column": 8
                        },
                        "end": {
                          "line": 372,
                          "column": 16
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 14231,
                        "end": 14238,
                        "loc": {
                          "start": {
                            "line": 372,
                            "column": 8
                          },
                          "end": {
                            "line": 372,
                            "column": 15
                          }
                        },
                        "callee": {
                          "type": "Super",
                          "start": 14231,
                          "end": 14236,
                          "loc": {
                            "start": {
                              "line": 372,
                              "column": 8
                            },
                            "end": {
                              "line": 372,
                              "column": 13
                            }
                          }
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 14249,
                      "end": 14267,
                      "loc": {
                        "start": {
                          "line": 373,
                          "column": 8
                        },
                        "end": {
                          "line": 373,
                          "column": 26
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 14249,
                        "end": 14266,
                        "loc": {
                          "start": {
                            "line": 373,
                            "column": 8
                          },
                          "end": {
                            "line": 373,
                            "column": 25
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 14249,
                          "end": 14258,
                          "loc": {
                            "start": {
                              "line": 373,
                              "column": 8
                            },
                            "end": {
                              "line": 373,
                              "column": 17
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 14249,
                            "end": 14253,
                            "loc": {
                              "start": {
                                "line": 373,
                                "column": 8
                              },
                              "end": {
                                "line": 373,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14254,
                            "end": 14258,
                            "loc": {
                              "start": {
                                "line": 373,
                                "column": 13
                              },
                              "end": {
                                "line": 373,
                                "column": 17
                              }
                            },
                            "name": "type"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 14261,
                          "end": 14266,
                          "loc": {
                            "start": {
                              "line": 373,
                              "column": 20
                            },
                            "end": {
                              "line": 373,
                              "column": 25
                            }
                          },
                          "value": "Arc",
                          "rawValue": "Arc",
                          "raw": "'Arc'"
                        }
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "create custom geometry equivalent to RingGeometry",
                          "start": 14279,
                          "end": 14330,
                          "loc": {
                            "start": {
                              "line": 375,
                              "column": 8
                            },
                            "end": {
                              "line": 375,
                              "column": 59
                            }
                          },
                          "range": [
                            14279,
                            14330
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 14340,
                      "end": 14376,
                      "loc": {
                        "start": {
                          "line": 376,
                          "column": 8
                        },
                        "end": {
                          "line": 376,
                          "column": 44
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 14344,
                          "end": 14375,
                          "loc": {
                            "start": {
                              "line": 376,
                              "column": 12
                            },
                            "end": {
                              "line": 376,
                              "column": 43
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 14344,
                            "end": 14352,
                            "loc": {
                              "start": {
                                "line": 376,
                                "column": 12
                              },
                              "end": {
                                "line": 376,
                                "column": 20
                              }
                            },
                            "name": "geometry",
                            "leadingComments": null
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 14355,
                            "end": 14375,
                            "loc": {
                              "start": {
                                "line": 376,
                                "column": 23
                              },
                              "end": {
                                "line": 376,
                                "column": 43
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 14359,
                              "end": 14373,
                              "loc": {
                                "start": {
                                  "line": 376,
                                  "column": 27
                                },
                                "end": {
                                  "line": 376,
                                  "column": 41
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 14359,
                                "end": 14364,
                                "loc": {
                                  "start": {
                                    "line": 376,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 376,
                                    "column": 32
                                  }
                                },
                                "name": "THREE"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 14365,
                                "end": 14373,
                                "loc": {
                                  "start": {
                                    "line": 376,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 376,
                                    "column": 41
                                  }
                                },
                                "name": "Geometry"
                              },
                              "computed": false
                            },
                            "arguments": []
                          },
                          "leadingComments": null
                        }
                      ],
                      "kind": "var",
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "create custom geometry equivalent to RingGeometry",
                          "start": 14279,
                          "end": 14330,
                          "loc": {
                            "start": {
                              "line": 375,
                              "column": 8
                            },
                            "end": {
                              "line": 375,
                              "column": 59
                            }
                          },
                          "range": [
                            14279,
                            14330
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ForStatement",
                      "start": 14386,
                      "end": 14561,
                      "loc": {
                        "start": {
                          "line": 377,
                          "column": 8
                        },
                        "end": {
                          "line": 378,
                          "column": 91
                        }
                      },
                      "init": {
                        "type": "VariableDeclaration",
                        "start": 14391,
                        "end": 14400,
                        "loc": {
                          "start": {
                            "line": 377,
                            "column": 13
                          },
                          "end": {
                            "line": 377,
                            "column": 22
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 14395,
                            "end": 14400,
                            "loc": {
                              "start": {
                                "line": 377,
                                "column": 17
                              },
                              "end": {
                                "line": 377,
                                "column": 22
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 14395,
                              "end": 14396,
                              "loc": {
                                "start": {
                                  "line": 377,
                                  "column": 17
                                },
                                "end": {
                                  "line": 377,
                                  "column": 18
                                }
                              },
                              "name": "i"
                            },
                            "init": {
                              "type": "Literal",
                              "start": 14399,
                              "end": 14400,
                              "loc": {
                                "start": {
                                  "line": 377,
                                  "column": 21
                                },
                                "end": {
                                  "line": 377,
                                  "column": 22
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            }
                          }
                        ],
                        "kind": "var"
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 14402,
                        "end": 14426,
                        "loc": {
                          "start": {
                            "line": 377,
                            "column": 24
                          },
                          "end": {
                            "line": 377,
                            "column": 48
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 14402,
                          "end": 14403,
                          "loc": {
                            "start": {
                              "line": 377,
                              "column": 24
                            },
                            "end": {
                              "line": 377,
                              "column": 25
                            }
                          },
                          "name": "i"
                        },
                        "operator": "<=",
                        "right": {
                          "type": "MemberExpression",
                          "start": 14407,
                          "end": 14426,
                          "loc": {
                            "start": {
                              "line": 377,
                              "column": 29
                            },
                            "end": {
                              "line": 377,
                              "column": 48
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 14407,
                            "end": 14411,
                            "loc": {
                              "start": {
                                "line": 377,
                                "column": 29
                              },
                              "end": {
                                "line": 377,
                                "column": 33
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14412,
                            "end": 14426,
                            "loc": {
                              "start": {
                                "line": 377,
                                "column": 34
                              },
                              "end": {
                                "line": 377,
                                "column": 48
                              }
                            },
                            "name": "meshResolution"
                          },
                          "computed": false
                        }
                      },
                      "update": {
                        "type": "UpdateExpression",
                        "start": 14428,
                        "end": 14431,
                        "loc": {
                          "start": {
                            "line": 377,
                            "column": 50
                          },
                          "end": {
                            "line": 377,
                            "column": 53
                          }
                        },
                        "operator": "++",
                        "prefix": false,
                        "argument": {
                          "type": "Identifier",
                          "start": 14428,
                          "end": 14429,
                          "loc": {
                            "start": {
                              "line": 377,
                              "column": 50
                            },
                            "end": {
                              "line": 377,
                              "column": 51
                            }
                          },
                          "name": "i"
                        }
                      },
                      "body": {
                        "type": "ExpressionStatement",
                        "start": 14482,
                        "end": 14561,
                        "loc": {
                          "start": {
                            "line": 378,
                            "column": 12
                          },
                          "end": {
                            "line": 378,
                            "column": 91
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 14482,
                          "end": 14560,
                          "loc": {
                            "start": {
                              "line": 378,
                              "column": 12
                            },
                            "end": {
                              "line": 378,
                              "column": 90
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 14482,
                            "end": 14504,
                            "loc": {
                              "start": {
                                "line": 378,
                                "column": 12
                              },
                              "end": {
                                "line": 378,
                                "column": 34
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 14482,
                              "end": 14499,
                              "loc": {
                                "start": {
                                  "line": 378,
                                  "column": 12
                                },
                                "end": {
                                  "line": 378,
                                  "column": 29
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 14482,
                                "end": 14490,
                                "loc": {
                                  "start": {
                                    "line": 378,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 378,
                                    "column": 20
                                  }
                                },
                                "name": "geometry",
                                "leadingComments": null
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 14491,
                                "end": 14499,
                                "loc": {
                                  "start": {
                                    "line": 378,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 378,
                                    "column": 29
                                  }
                                },
                                "name": "vertices"
                              },
                              "computed": false,
                              "leadingComments": null
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 14500,
                              "end": 14504,
                              "loc": {
                                "start": {
                                  "line": 378,
                                  "column": 30
                                },
                                "end": {
                                  "line": 378,
                                  "column": 34
                                }
                              },
                              "name": "push"
                            },
                            "computed": false,
                            "leadingComments": null
                          },
                          "arguments": [
                            {
                              "type": "NewExpression",
                              "start": 14505,
                              "end": 14531,
                              "loc": {
                                "start": {
                                  "line": 378,
                                  "column": 35
                                },
                                "end": {
                                  "line": 378,
                                  "column": 61
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 14509,
                                "end": 14522,
                                "loc": {
                                  "start": {
                                    "line": 378,
                                    "column": 39
                                  },
                                  "end": {
                                    "line": 378,
                                    "column": 52
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 14509,
                                  "end": 14514,
                                  "loc": {
                                    "start": {
                                      "line": 378,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 378,
                                      "column": 44
                                    }
                                  },
                                  "name": "THREE"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 14515,
                                  "end": 14522,
                                  "loc": {
                                    "start": {
                                      "line": 378,
                                      "column": 45
                                    },
                                    "end": {
                                      "line": 378,
                                      "column": 52
                                    }
                                  },
                                  "name": "Vector3"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 14523,
                                  "end": 14524,
                                  "loc": {
                                    "start": {
                                      "line": 378,
                                      "column": 53
                                    },
                                    "end": {
                                      "line": 378,
                                      "column": 54
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Literal",
                                  "start": 14526,
                                  "end": 14527,
                                  "loc": {
                                    "start": {
                                      "line": 378,
                                      "column": 56
                                    },
                                    "end": {
                                      "line": 378,
                                      "column": 57
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Literal",
                                  "start": 14529,
                                  "end": 14530,
                                  "loc": {
                                    "start": {
                                      "line": 378,
                                      "column": 59
                                    },
                                    "end": {
                                      "line": 378,
                                      "column": 60
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            },
                            {
                              "type": "NewExpression",
                              "start": 14533,
                              "end": 14559,
                              "loc": {
                                "start": {
                                  "line": 378,
                                  "column": 63
                                },
                                "end": {
                                  "line": 378,
                                  "column": 89
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 14537,
                                "end": 14550,
                                "loc": {
                                  "start": {
                                    "line": 378,
                                    "column": 67
                                  },
                                  "end": {
                                    "line": 378,
                                    "column": 80
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 14537,
                                  "end": 14542,
                                  "loc": {
                                    "start": {
                                      "line": 378,
                                      "column": 67
                                    },
                                    "end": {
                                      "line": 378,
                                      "column": 72
                                    }
                                  },
                                  "name": "THREE"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 14543,
                                  "end": 14550,
                                  "loc": {
                                    "start": {
                                      "line": 378,
                                      "column": 73
                                    },
                                    "end": {
                                      "line": 378,
                                      "column": 80
                                    }
                                  },
                                  "name": "Vector3"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 14551,
                                  "end": 14552,
                                  "loc": {
                                    "start": {
                                      "line": 378,
                                      "column": 81
                                    },
                                    "end": {
                                      "line": 378,
                                      "column": 82
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Literal",
                                  "start": 14554,
                                  "end": 14555,
                                  "loc": {
                                    "start": {
                                      "line": 378,
                                      "column": 84
                                    },
                                    "end": {
                                      "line": 378,
                                      "column": 85
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Literal",
                                  "start": 14557,
                                  "end": 14558,
                                  "loc": {
                                    "start": {
                                      "line": 378,
                                      "column": 87
                                    },
                                    "end": {
                                      "line": 378,
                                      "column": 88
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            }
                          ],
                          "leadingComments": null
                        },
                        "leadingComments": [
                          {
                            "type": "CommentLine",
                            "value": "to be set in updateVisualization",
                            "start": 14434,
                            "end": 14468,
                            "loc": {
                              "start": {
                                "line": 377,
                                "column": 56
                              },
                              "end": {
                                "line": 377,
                                "column": 90
                              }
                            },
                            "range": [
                              14434,
                              14468
                            ]
                          }
                        ]
                      }
                    },
                    {
                      "type": "ForStatement",
                      "start": 14571,
                      "end": 14840,
                      "loc": {
                        "start": {
                          "line": 379,
                          "column": 8
                        },
                        "end": {
                          "line": 384,
                          "column": 9
                        }
                      },
                      "init": {
                        "type": "VariableDeclaration",
                        "start": 14576,
                        "end": 14585,
                        "loc": {
                          "start": {
                            "line": 379,
                            "column": 13
                          },
                          "end": {
                            "line": 379,
                            "column": 22
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 14580,
                            "end": 14585,
                            "loc": {
                              "start": {
                                "line": 379,
                                "column": 17
                              },
                              "end": {
                                "line": 379,
                                "column": 22
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 14580,
                              "end": 14581,
                              "loc": {
                                "start": {
                                  "line": 379,
                                  "column": 17
                                },
                                "end": {
                                  "line": 379,
                                  "column": 18
                                }
                              },
                              "name": "i"
                            },
                            "init": {
                              "type": "Literal",
                              "start": 14584,
                              "end": 14585,
                              "loc": {
                                "start": {
                                  "line": 379,
                                  "column": 21
                                },
                                "end": {
                                  "line": 379,
                                  "column": 22
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            }
                          }
                        ],
                        "kind": "var"
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 14587,
                        "end": 14610,
                        "loc": {
                          "start": {
                            "line": 379,
                            "column": 24
                          },
                          "end": {
                            "line": 379,
                            "column": 47
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 14587,
                          "end": 14588,
                          "loc": {
                            "start": {
                              "line": 379,
                              "column": 24
                            },
                            "end": {
                              "line": 379,
                              "column": 25
                            }
                          },
                          "name": "i"
                        },
                        "operator": "<",
                        "right": {
                          "type": "MemberExpression",
                          "start": 14591,
                          "end": 14610,
                          "loc": {
                            "start": {
                              "line": 379,
                              "column": 28
                            },
                            "end": {
                              "line": 379,
                              "column": 47
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 14591,
                            "end": 14595,
                            "loc": {
                              "start": {
                                "line": 379,
                                "column": 28
                              },
                              "end": {
                                "line": 379,
                                "column": 32
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14596,
                            "end": 14610,
                            "loc": {
                              "start": {
                                "line": 379,
                                "column": 33
                              },
                              "end": {
                                "line": 379,
                                "column": 47
                              }
                            },
                            "name": "meshResolution"
                          },
                          "computed": false
                        }
                      },
                      "update": {
                        "type": "UpdateExpression",
                        "start": 14612,
                        "end": 14615,
                        "loc": {
                          "start": {
                            "line": 379,
                            "column": 49
                          },
                          "end": {
                            "line": 379,
                            "column": 52
                          }
                        },
                        "operator": "++",
                        "prefix": false,
                        "argument": {
                          "type": "Identifier",
                          "start": 14612,
                          "end": 14613,
                          "loc": {
                            "start": {
                              "line": 379,
                              "column": 49
                            },
                            "end": {
                              "line": 379,
                              "column": 50
                            }
                          },
                          "name": "i"
                        }
                      },
                      "body": {
                        "type": "BlockStatement",
                        "start": 14617,
                        "end": 14840,
                        "loc": {
                          "start": {
                            "line": 379,
                            "column": 54
                          },
                          "end": {
                            "line": 384,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 14632,
                            "end": 14829,
                            "loc": {
                              "start": {
                                "line": 380,
                                "column": 12
                              },
                              "end": {
                                "line": 383,
                                "column": 14
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 14632,
                              "end": 14828,
                              "loc": {
                                "start": {
                                  "line": 380,
                                  "column": 12
                                },
                                "end": {
                                  "line": 383,
                                  "column": 13
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 14632,
                                "end": 14651,
                                "loc": {
                                  "start": {
                                    "line": 380,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 380,
                                    "column": 31
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 14632,
                                  "end": 14646,
                                  "loc": {
                                    "start": {
                                      "line": 380,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 380,
                                      "column": 26
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 14632,
                                    "end": 14640,
                                    "loc": {
                                      "start": {
                                        "line": 380,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 380,
                                        "column": 20
                                      }
                                    },
                                    "name": "geometry"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 14641,
                                    "end": 14646,
                                    "loc": {
                                      "start": {
                                        "line": 380,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 380,
                                        "column": 26
                                      }
                                    },
                                    "name": "faces"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 14647,
                                  "end": 14651,
                                  "loc": {
                                    "start": {
                                      "line": 380,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 380,
                                      "column": 31
                                    }
                                  },
                                  "name": "push"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "NewExpression",
                                  "start": 14670,
                                  "end": 14732,
                                  "loc": {
                                    "start": {
                                      "line": 381,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 381,
                                      "column": 78
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 14674,
                                    "end": 14685,
                                    "loc": {
                                      "start": {
                                        "line": 381,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 381,
                                        "column": 31
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 14674,
                                      "end": 14679,
                                      "loc": {
                                        "start": {
                                          "line": 381,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 381,
                                          "column": 25
                                        }
                                      },
                                      "name": "THREE"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 14680,
                                      "end": 14685,
                                      "loc": {
                                        "start": {
                                          "line": 381,
                                          "column": 26
                                        },
                                        "end": {
                                          "line": 381,
                                          "column": 31
                                        }
                                      },
                                      "name": "Face3"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "BinaryExpression",
                                      "start": 14686,
                                      "end": 14689,
                                      "loc": {
                                        "start": {
                                          "line": 381,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 381,
                                          "column": 35
                                        }
                                      },
                                      "left": {
                                        "type": "Literal",
                                        "start": 14686,
                                        "end": 14687,
                                        "loc": {
                                          "start": {
                                            "line": 381,
                                            "column": 32
                                          },
                                          "end": {
                                            "line": 381,
                                            "column": 33
                                          }
                                        },
                                        "value": 2,
                                        "rawValue": 2,
                                        "raw": "2"
                                      },
                                      "operator": "*",
                                      "right": {
                                        "type": "Identifier",
                                        "start": 14688,
                                        "end": 14689,
                                        "loc": {
                                          "start": {
                                            "line": 381,
                                            "column": 34
                                          },
                                          "end": {
                                            "line": 381,
                                            "column": 35
                                          }
                                        },
                                        "name": "i"
                                      }
                                    },
                                    {
                                      "type": "BinaryExpression",
                                      "start": 14691,
                                      "end": 14696,
                                      "loc": {
                                        "start": {
                                          "line": 381,
                                          "column": 37
                                        },
                                        "end": {
                                          "line": 381,
                                          "column": 42
                                        }
                                      },
                                      "left": {
                                        "type": "BinaryExpression",
                                        "start": 14691,
                                        "end": 14694,
                                        "loc": {
                                          "start": {
                                            "line": 381,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 381,
                                            "column": 40
                                          }
                                        },
                                        "left": {
                                          "type": "Literal",
                                          "start": 14691,
                                          "end": 14692,
                                          "loc": {
                                            "start": {
                                              "line": 381,
                                              "column": 37
                                            },
                                            "end": {
                                              "line": 381,
                                              "column": 38
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 14693,
                                          "end": 14694,
                                          "loc": {
                                            "start": {
                                              "line": 381,
                                              "column": 39
                                            },
                                            "end": {
                                              "line": 381,
                                              "column": 40
                                            }
                                          },
                                          "name": "i"
                                        }
                                      },
                                      "operator": "+",
                                      "right": {
                                        "type": "Literal",
                                        "start": 14695,
                                        "end": 14696,
                                        "loc": {
                                          "start": {
                                            "line": 381,
                                            "column": 41
                                          },
                                          "end": {
                                            "line": 381,
                                            "column": 42
                                          }
                                        },
                                        "value": 2,
                                        "rawValue": 2,
                                        "raw": "2"
                                      }
                                    },
                                    {
                                      "type": "BinaryExpression",
                                      "start": 14698,
                                      "end": 14703,
                                      "loc": {
                                        "start": {
                                          "line": 381,
                                          "column": 44
                                        },
                                        "end": {
                                          "line": 381,
                                          "column": 49
                                        }
                                      },
                                      "left": {
                                        "type": "BinaryExpression",
                                        "start": 14698,
                                        "end": 14701,
                                        "loc": {
                                          "start": {
                                            "line": 381,
                                            "column": 44
                                          },
                                          "end": {
                                            "line": 381,
                                            "column": 47
                                          }
                                        },
                                        "left": {
                                          "type": "Literal",
                                          "start": 14698,
                                          "end": 14699,
                                          "loc": {
                                            "start": {
                                              "line": 381,
                                              "column": 44
                                            },
                                            "end": {
                                              "line": 381,
                                              "column": 45
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 14700,
                                          "end": 14701,
                                          "loc": {
                                            "start": {
                                              "line": 381,
                                              "column": 46
                                            },
                                            "end": {
                                              "line": 381,
                                              "column": 47
                                            }
                                          },
                                          "name": "i"
                                        }
                                      },
                                      "operator": "+",
                                      "right": {
                                        "type": "Literal",
                                        "start": 14702,
                                        "end": 14703,
                                        "loc": {
                                          "start": {
                                            "line": 381,
                                            "column": 48
                                          },
                                          "end": {
                                            "line": 381,
                                            "column": 49
                                          }
                                        },
                                        "value": 3,
                                        "rawValue": 3,
                                        "raw": "3"
                                      }
                                    },
                                    {
                                      "type": "NewExpression",
                                      "start": 14705,
                                      "end": 14731,
                                      "loc": {
                                        "start": {
                                          "line": 381,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 381,
                                          "column": 77
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 14709,
                                        "end": 14722,
                                        "loc": {
                                          "start": {
                                            "line": 381,
                                            "column": 55
                                          },
                                          "end": {
                                            "line": 381,
                                            "column": 68
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 14709,
                                          "end": 14714,
                                          "loc": {
                                            "start": {
                                              "line": 381,
                                              "column": 55
                                            },
                                            "end": {
                                              "line": 381,
                                              "column": 60
                                            }
                                          },
                                          "name": "THREE"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 14715,
                                          "end": 14722,
                                          "loc": {
                                            "start": {
                                              "line": 381,
                                              "column": 61
                                            },
                                            "end": {
                                              "line": 381,
                                              "column": 68
                                            }
                                          },
                                          "name": "Vector3"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Literal",
                                          "start": 14723,
                                          "end": 14724,
                                          "loc": {
                                            "start": {
                                              "line": 381,
                                              "column": 69
                                            },
                                            "end": {
                                              "line": 381,
                                              "column": 70
                                            }
                                          },
                                          "value": 0,
                                          "rawValue": 0,
                                          "raw": "0"
                                        },
                                        {
                                          "type": "Literal",
                                          "start": 14726,
                                          "end": 14727,
                                          "loc": {
                                            "start": {
                                              "line": 381,
                                              "column": 72
                                            },
                                            "end": {
                                              "line": 381,
                                              "column": 73
                                            }
                                          },
                                          "value": 0,
                                          "rawValue": 0,
                                          "raw": "0"
                                        },
                                        {
                                          "type": "Literal",
                                          "start": 14729,
                                          "end": 14730,
                                          "loc": {
                                            "start": {
                                              "line": 381,
                                              "column": 75
                                            },
                                            "end": {
                                              "line": 381,
                                              "column": 76
                                            }
                                          },
                                          "value": 1,
                                          "rawValue": 1,
                                          "raw": "1"
                                        }
                                      ]
                                    }
                                  ]
                                },
                                {
                                  "type": "NewExpression",
                                  "start": 14751,
                                  "end": 14813,
                                  "loc": {
                                    "start": {
                                      "line": 382,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 382,
                                      "column": 78
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 14755,
                                    "end": 14766,
                                    "loc": {
                                      "start": {
                                        "line": 382,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 382,
                                        "column": 31
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 14755,
                                      "end": 14760,
                                      "loc": {
                                        "start": {
                                          "line": 382,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 382,
                                          "column": 25
                                        }
                                      },
                                      "name": "THREE"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 14761,
                                      "end": 14766,
                                      "loc": {
                                        "start": {
                                          "line": 382,
                                          "column": 26
                                        },
                                        "end": {
                                          "line": 382,
                                          "column": 31
                                        }
                                      },
                                      "name": "Face3"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "BinaryExpression",
                                      "start": 14767,
                                      "end": 14772,
                                      "loc": {
                                        "start": {
                                          "line": 382,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 382,
                                          "column": 37
                                        }
                                      },
                                      "left": {
                                        "type": "BinaryExpression",
                                        "start": 14767,
                                        "end": 14770,
                                        "loc": {
                                          "start": {
                                            "line": 382,
                                            "column": 32
                                          },
                                          "end": {
                                            "line": 382,
                                            "column": 35
                                          }
                                        },
                                        "left": {
                                          "type": "Literal",
                                          "start": 14767,
                                          "end": 14768,
                                          "loc": {
                                            "start": {
                                              "line": 382,
                                              "column": 32
                                            },
                                            "end": {
                                              "line": 382,
                                              "column": 33
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 14769,
                                          "end": 14770,
                                          "loc": {
                                            "start": {
                                              "line": 382,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 382,
                                              "column": 35
                                            }
                                          },
                                          "name": "i"
                                        }
                                      },
                                      "operator": "+",
                                      "right": {
                                        "type": "Literal",
                                        "start": 14771,
                                        "end": 14772,
                                        "loc": {
                                          "start": {
                                            "line": 382,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 382,
                                            "column": 37
                                          }
                                        },
                                        "value": 3,
                                        "rawValue": 3,
                                        "raw": "3"
                                      }
                                    },
                                    {
                                      "type": "BinaryExpression",
                                      "start": 14774,
                                      "end": 14779,
                                      "loc": {
                                        "start": {
                                          "line": 382,
                                          "column": 39
                                        },
                                        "end": {
                                          "line": 382,
                                          "column": 44
                                        }
                                      },
                                      "left": {
                                        "type": "BinaryExpression",
                                        "start": 14774,
                                        "end": 14777,
                                        "loc": {
                                          "start": {
                                            "line": 382,
                                            "column": 39
                                          },
                                          "end": {
                                            "line": 382,
                                            "column": 42
                                          }
                                        },
                                        "left": {
                                          "type": "Literal",
                                          "start": 14774,
                                          "end": 14775,
                                          "loc": {
                                            "start": {
                                              "line": 382,
                                              "column": 39
                                            },
                                            "end": {
                                              "line": 382,
                                              "column": 40
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 14776,
                                          "end": 14777,
                                          "loc": {
                                            "start": {
                                              "line": 382,
                                              "column": 41
                                            },
                                            "end": {
                                              "line": 382,
                                              "column": 42
                                            }
                                          },
                                          "name": "i"
                                        }
                                      },
                                      "operator": "+",
                                      "right": {
                                        "type": "Literal",
                                        "start": 14778,
                                        "end": 14779,
                                        "loc": {
                                          "start": {
                                            "line": 382,
                                            "column": 43
                                          },
                                          "end": {
                                            "line": 382,
                                            "column": 44
                                          }
                                        },
                                        "value": 1,
                                        "rawValue": 1,
                                        "raw": "1"
                                      }
                                    },
                                    {
                                      "type": "BinaryExpression",
                                      "start": 14781,
                                      "end": 14784,
                                      "loc": {
                                        "start": {
                                          "line": 382,
                                          "column": 46
                                        },
                                        "end": {
                                          "line": 382,
                                          "column": 49
                                        }
                                      },
                                      "left": {
                                        "type": "Literal",
                                        "start": 14781,
                                        "end": 14782,
                                        "loc": {
                                          "start": {
                                            "line": 382,
                                            "column": 46
                                          },
                                          "end": {
                                            "line": 382,
                                            "column": 47
                                          }
                                        },
                                        "value": 2,
                                        "rawValue": 2,
                                        "raw": "2"
                                      },
                                      "operator": "*",
                                      "right": {
                                        "type": "Identifier",
                                        "start": 14783,
                                        "end": 14784,
                                        "loc": {
                                          "start": {
                                            "line": 382,
                                            "column": 48
                                          },
                                          "end": {
                                            "line": 382,
                                            "column": 49
                                          }
                                        },
                                        "name": "i"
                                      }
                                    },
                                    {
                                      "type": "NewExpression",
                                      "start": 14786,
                                      "end": 14812,
                                      "loc": {
                                        "start": {
                                          "line": 382,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 382,
                                          "column": 77
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 14790,
                                        "end": 14803,
                                        "loc": {
                                          "start": {
                                            "line": 382,
                                            "column": 55
                                          },
                                          "end": {
                                            "line": 382,
                                            "column": 68
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 14790,
                                          "end": 14795,
                                          "loc": {
                                            "start": {
                                              "line": 382,
                                              "column": 55
                                            },
                                            "end": {
                                              "line": 382,
                                              "column": 60
                                            }
                                          },
                                          "name": "THREE"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 14796,
                                          "end": 14803,
                                          "loc": {
                                            "start": {
                                              "line": 382,
                                              "column": 61
                                            },
                                            "end": {
                                              "line": 382,
                                              "column": 68
                                            }
                                          },
                                          "name": "Vector3"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Literal",
                                          "start": 14804,
                                          "end": 14805,
                                          "loc": {
                                            "start": {
                                              "line": 382,
                                              "column": 69
                                            },
                                            "end": {
                                              "line": 382,
                                              "column": 70
                                            }
                                          },
                                          "value": 0,
                                          "rawValue": 0,
                                          "raw": "0"
                                        },
                                        {
                                          "type": "Literal",
                                          "start": 14807,
                                          "end": 14808,
                                          "loc": {
                                            "start": {
                                              "line": 382,
                                              "column": 72
                                            },
                                            "end": {
                                              "line": 382,
                                              "column": 73
                                            }
                                          },
                                          "value": 0,
                                          "rawValue": 0,
                                          "raw": "0"
                                        },
                                        {
                                          "type": "Literal",
                                          "start": 14810,
                                          "end": 14811,
                                          "loc": {
                                            "start": {
                                              "line": 382,
                                              "column": 75
                                            },
                                            "end": {
                                              "line": 382,
                                              "column": 76
                                            }
                                          },
                                          "value": 1,
                                          "rawValue": 1,
                                          "raw": "1"
                                        }
                                      ]
                                    }
                                  ]
                                }
                              ]
                            }
                          }
                        ],
                        "trailingComments": null
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "create a mesh with it",
                          "start": 14850,
                          "end": 14873,
                          "loc": {
                            "start": {
                              "line": 385,
                              "column": 8
                            },
                            "end": {
                              "line": 385,
                              "column": 31
                            }
                          },
                          "range": [
                            14850,
                            14873
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 14883,
                      "end": 15133,
                      "loc": {
                        "start": {
                          "line": 386,
                          "column": 8
                        },
                        "end": {
                          "line": 390,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 14883,
                        "end": 15132,
                        "loc": {
                          "start": {
                            "line": 386,
                            "column": 8
                          },
                          "end": {
                            "line": 390,
                            "column": 10
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 14883,
                          "end": 14892,
                          "loc": {
                            "start": {
                              "line": 386,
                              "column": 8
                            },
                            "end": {
                              "line": 386,
                              "column": 17
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 14883,
                            "end": 14887,
                            "loc": {
                              "start": {
                                "line": 386,
                                "column": 8
                              },
                              "end": {
                                "line": 386,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14888,
                            "end": 14892,
                            "loc": {
                              "start": {
                                "line": 386,
                                "column": 13
                              },
                              "end": {
                                "line": 386,
                                "column": 17
                              }
                            },
                            "name": "mesh"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 14895,
                          "end": 15132,
                          "loc": {
                            "start": {
                              "line": 386,
                              "column": 20
                            },
                            "end": {
                              "line": 390,
                              "column": 10
                            }
                          },
                          "callee": {
                            "type": "Identifier",
                            "start": 14899,
                            "end": 14911,
                            "loc": {
                              "start": {
                                "line": 386,
                                "column": 24
                              },
                              "end": {
                                "line": 386,
                                "column": 36
                              }
                            },
                            "name": "InteractMesh"
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 14912,
                              "end": 14920,
                              "loc": {
                                "start": {
                                  "line": 386,
                                  "column": 37
                                },
                                "end": {
                                  "line": 386,
                                  "column": 45
                                }
                              },
                              "name": "geometry"
                            },
                            {
                              "type": "NewExpression",
                              "start": 14922,
                              "end": 15131,
                              "loc": {
                                "start": {
                                  "line": 386,
                                  "column": 47
                                },
                                "end": {
                                  "line": 390,
                                  "column": 9
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 14926,
                                "end": 14949,
                                "loc": {
                                  "start": {
                                    "line": 386,
                                    "column": 51
                                  },
                                  "end": {
                                    "line": 386,
                                    "column": 74
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 14926,
                                  "end": 14931,
                                  "loc": {
                                    "start": {
                                      "line": 386,
                                      "column": 51
                                    },
                                    "end": {
                                      "line": 386,
                                      "column": 56
                                    }
                                  },
                                  "name": "THREE"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 14932,
                                  "end": 14949,
                                  "loc": {
                                    "start": {
                                      "line": 386,
                                      "column": 57
                                    },
                                    "end": {
                                      "line": 386,
                                      "column": 74
                                    }
                                  },
                                  "name": "MeshBasicMaterial"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ObjectExpression",
                                  "start": 14964,
                                  "end": 15120,
                                  "loc": {
                                    "start": {
                                      "line": 387,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 389,
                                      "column": 13
                                    }
                                  },
                                  "properties": [
                                    {
                                      "type": "Property",
                                      "start": 14965,
                                      "end": 14993,
                                      "loc": {
                                        "start": {
                                          "line": 387,
                                          "column": 13
                                        },
                                        "end": {
                                          "line": 387,
                                          "column": 41
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 14965,
                                        "end": 14970,
                                        "loc": {
                                          "start": {
                                            "line": 387,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 387,
                                            "column": 18
                                          }
                                        },
                                        "name": "color"
                                      },
                                      "value": {
                                        "type": "CallExpression",
                                        "start": 14972,
                                        "end": 14993,
                                        "loc": {
                                          "start": {
                                            "line": 387,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 387,
                                            "column": 41
                                          }
                                        },
                                        "callee": {
                                          "type": "Identifier",
                                          "start": 14972,
                                          "end": 14980,
                                          "loc": {
                                            "start": {
                                              "line": 387,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 387,
                                              "column": 28
                                            }
                                          },
                                          "name": "getColor"
                                        },
                                        "arguments": [
                                          {
                                            "type": "ThisExpression",
                                            "start": 14981,
                                            "end": 14985,
                                            "loc": {
                                              "start": {
                                                "line": 387,
                                                "column": 29
                                              },
                                              "end": {
                                                "line": 387,
                                                "column": 33
                                              }
                                            }
                                          },
                                          {
                                            "type": "Literal",
                                            "start": 14987,
                                            "end": 14992,
                                            "loc": {
                                              "start": {
                                                "line": 387,
                                                "column": 35
                                              },
                                              "end": {
                                                "line": 387,
                                                "column": 40
                                              }
                                            },
                                            "value": false,
                                            "rawValue": false,
                                            "raw": "false"
                                          }
                                        ]
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 14995,
                                      "end": 15017,
                                      "loc": {
                                        "start": {
                                          "line": 387,
                                          "column": 43
                                        },
                                        "end": {
                                          "line": 387,
                                          "column": 65
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 14995,
                                        "end": 14999,
                                        "loc": {
                                          "start": {
                                            "line": 387,
                                            "column": 43
                                          },
                                          "end": {
                                            "line": 387,
                                            "column": 47
                                          }
                                        },
                                        "name": "side"
                                      },
                                      "value": {
                                        "type": "MemberExpression",
                                        "start": 15001,
                                        "end": 15017,
                                        "loc": {
                                          "start": {
                                            "line": 387,
                                            "column": 49
                                          },
                                          "end": {
                                            "line": 387,
                                            "column": 65
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 15001,
                                          "end": 15006,
                                          "loc": {
                                            "start": {
                                              "line": 387,
                                              "column": 49
                                            },
                                            "end": {
                                              "line": 387,
                                              "column": 54
                                            }
                                          },
                                          "name": "THREE"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 15007,
                                          "end": 15017,
                                          "loc": {
                                            "start": {
                                              "line": 387,
                                              "column": 55
                                            },
                                            "end": {
                                              "line": 387,
                                              "column": 65
                                            }
                                          },
                                          "name": "DoubleSide"
                                        },
                                        "computed": false
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 15036,
                                      "end": 15055,
                                      "loc": {
                                        "start": {
                                          "line": 388,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 388,
                                          "column": 35
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 15036,
                                        "end": 15049,
                                        "loc": {
                                          "start": {
                                            "line": 388,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 388,
                                            "column": 29
                                          }
                                        },
                                        "name": "polygonOffset"
                                      },
                                      "value": {
                                        "type": "Literal",
                                        "start": 15051,
                                        "end": 15055,
                                        "loc": {
                                          "start": {
                                            "line": 388,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 388,
                                            "column": 35
                                          }
                                        },
                                        "value": true,
                                        "rawValue": true,
                                        "raw": "true"
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 15057,
                                      "end": 15080,
                                      "loc": {
                                        "start": {
                                          "line": 388,
                                          "column": 37
                                        },
                                        "end": {
                                          "line": 388,
                                          "column": 60
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 15057,
                                        "end": 15076,
                                        "loc": {
                                          "start": {
                                            "line": 388,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 388,
                                            "column": 56
                                          }
                                        },
                                        "name": "polygonOffsetFactor"
                                      },
                                      "value": {
                                        "type": "UnaryExpression",
                                        "start": 15078,
                                        "end": 15080,
                                        "loc": {
                                          "start": {
                                            "line": 388,
                                            "column": 58
                                          },
                                          "end": {
                                            "line": 388,
                                            "column": 60
                                          }
                                        },
                                        "operator": "-",
                                        "prefix": true,
                                        "argument": {
                                          "type": "Literal",
                                          "start": 15079,
                                          "end": 15080,
                                          "loc": {
                                            "start": {
                                              "line": 388,
                                              "column": 59
                                            },
                                            "end": {
                                              "line": 388,
                                              "column": 60
                                            }
                                          },
                                          "value": 1,
                                          "rawValue": 1,
                                          "raw": "1"
                                        }
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 15082,
                                      "end": 15105,
                                      "loc": {
                                        "start": {
                                          "line": 388,
                                          "column": 62
                                        },
                                        "end": {
                                          "line": 388,
                                          "column": 85
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 15082,
                                        "end": 15100,
                                        "loc": {
                                          "start": {
                                            "line": 388,
                                            "column": 62
                                          },
                                          "end": {
                                            "line": 388,
                                            "column": 80
                                          }
                                        },
                                        "name": "polygonOffsetUnits"
                                      },
                                      "value": {
                                        "type": "UnaryExpression",
                                        "start": 15103,
                                        "end": 15105,
                                        "loc": {
                                          "start": {
                                            "line": 388,
                                            "column": 83
                                          },
                                          "end": {
                                            "line": 388,
                                            "column": 85
                                          }
                                        },
                                        "operator": "-",
                                        "prefix": true,
                                        "argument": {
                                          "type": "Literal",
                                          "start": 15104,
                                          "end": 15105,
                                          "loc": {
                                            "start": {
                                              "line": 388,
                                              "column": 84
                                            },
                                            "end": {
                                              "line": 388,
                                              "column": 85
                                            }
                                          },
                                          "value": 5,
                                          "rawValue": 5,
                                          "raw": "5"
                                        }
                                      },
                                      "kind": "init"
                                    }
                                  ]
                                }
                              ]
                            }
                          ]
                        },
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "create a mesh with it",
                          "start": 14850,
                          "end": 14873,
                          "loc": {
                            "start": {
                              "line": 385,
                              "column": 8
                            },
                            "end": {
                              "line": 385,
                              "column": 31
                            }
                          },
                          "range": [
                            14850,
                            14873
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 15143,
                      "end": 15169,
                      "loc": {
                        "start": {
                          "line": 391,
                          "column": 8
                        },
                        "end": {
                          "line": 391,
                          "column": 34
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 15143,
                        "end": 15168,
                        "loc": {
                          "start": {
                            "line": 391,
                            "column": 8
                          },
                          "end": {
                            "line": 391,
                            "column": 33
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 15143,
                          "end": 15156,
                          "loc": {
                            "start": {
                              "line": 391,
                              "column": 8
                            },
                            "end": {
                              "line": 391,
                              "column": 21
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 15143,
                            "end": 15147,
                            "loc": {
                              "start": {
                                "line": 391,
                                "column": 8
                              },
                              "end": {
                                "line": 391,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 15148,
                            "end": 15156,
                            "loc": {
                              "start": {
                                "line": 391,
                                "column": 13
                              },
                              "end": {
                                "line": 391,
                                "column": 21
                              }
                            },
                            "name": "interact"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 15159,
                          "end": 15168,
                          "loc": {
                            "start": {
                              "line": 391,
                              "column": 24
                            },
                            "end": {
                              "line": 391,
                              "column": 33
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 15159,
                            "end": 15163,
                            "loc": {
                              "start": {
                                "line": 391,
                                "column": 24
                              },
                              "end": {
                                "line": 391,
                                "column": 28
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 15164,
                            "end": 15168,
                            "loc": {
                              "start": {
                                "line": 391,
                                "column": 29
                              },
                              "end": {
                                "line": 391,
                                "column": 33
                              }
                            },
                            "name": "mesh"
                          },
                          "computed": false
                        }
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "pseudonym, place your interactions here",
                          "start": 15170,
                          "end": 15211,
                          "loc": {
                            "start": {
                              "line": 391,
                              "column": 35
                            },
                            "end": {
                              "line": 391,
                              "column": 76
                            }
                          },
                          "range": [
                            15170,
                            15211
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 15223,
                      "end": 15264,
                      "loc": {
                        "start": {
                          "line": 393,
                          "column": 8
                        },
                        "end": {
                          "line": 393,
                          "column": 49
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 15223,
                        "end": 15263,
                        "loc": {
                          "start": {
                            "line": 393,
                            "column": 8
                          },
                          "end": {
                            "line": 393,
                            "column": 48
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 15223,
                          "end": 15234,
                          "loc": {
                            "start": {
                              "line": 393,
                              "column": 8
                            },
                            "end": {
                              "line": 393,
                              "column": 19
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 15223,
                            "end": 15227,
                            "loc": {
                              "start": {
                                "line": 393,
                                "column": 8
                              },
                              "end": {
                                "line": 393,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 15228,
                            "end": 15234,
                            "loc": {
                              "start": {
                                "line": 393,
                                "column": 13
                              },
                              "end": {
                                "line": 393,
                                "column": 19
                              }
                            },
                            "name": "points"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "ArrayExpression",
                          "start": 15237,
                          "end": 15263,
                          "loc": {
                            "start": {
                              "line": 393,
                              "column": 22
                            },
                            "end": {
                              "line": 393,
                              "column": 48
                            }
                          },
                          "elements": [
                            {
                              "type": "NewExpression",
                              "start": 15238,
                              "end": 15249,
                              "loc": {
                                "start": {
                                  "line": 393,
                                  "column": 23
                                },
                                "end": {
                                  "line": 393,
                                  "column": 34
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 15242,
                                "end": 15247,
                                "loc": {
                                  "start": {
                                    "line": 393,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 393,
                                    "column": 32
                                  }
                                },
                                "name": "Point"
                              },
                              "arguments": []
                            },
                            {
                              "type": "NewExpression",
                              "start": 15251,
                              "end": 15262,
                              "loc": {
                                "start": {
                                  "line": 393,
                                  "column": 36
                                },
                                "end": {
                                  "line": 393,
                                  "column": 47
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 15255,
                                "end": 15260,
                                "loc": {
                                  "start": {
                                    "line": 393,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 393,
                                    "column": 45
                                  }
                                },
                                "name": "Point"
                              },
                              "arguments": []
                            }
                          ]
                        },
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "pseudonym, place your interactions here",
                          "start": 15170,
                          "end": 15211,
                          "loc": {
                            "start": {
                              "line": 391,
                              "column": 35
                            },
                            "end": {
                              "line": 391,
                              "column": 76
                            }
                          },
                          "range": [
                            15170,
                            15211
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 15274,
                      "end": 15305,
                      "loc": {
                        "start": {
                          "line": 394,
                          "column": 8
                        },
                        "end": {
                          "line": 394,
                          "column": 39
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 15274,
                        "end": 15304,
                        "loc": {
                          "start": {
                            "line": 394,
                            "column": 8
                          },
                          "end": {
                            "line": 394,
                            "column": 38
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 15274,
                          "end": 15290,
                          "loc": {
                            "start": {
                              "line": 394,
                              "column": 8
                            },
                            "end": {
                              "line": 394,
                              "column": 24
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 15274,
                            "end": 15278,
                            "loc": {
                              "start": {
                                "line": 394,
                                "column": 8
                              },
                              "end": {
                                "line": 394,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 15279,
                            "end": 15290,
                            "loc": {
                              "start": {
                                "line": 394,
                                "column": 13
                              },
                              "end": {
                                "line": 394,
                                "column": 24
                              }
                            },
                            "name": "centerPoint"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 15293,
                          "end": 15304,
                          "loc": {
                            "start": {
                              "line": 394,
                              "column": 27
                            },
                            "end": {
                              "line": 394,
                              "column": 38
                            }
                          },
                          "callee": {
                            "type": "Identifier",
                            "start": 15297,
                            "end": 15302,
                            "loc": {
                              "start": {
                                "line": 394,
                                "column": 31
                              },
                              "end": {
                                "line": 394,
                                "column": 36
                              }
                            },
                            "name": "Point"
                          },
                          "arguments": []
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 15315,
                      "end": 15350,
                      "loc": {
                        "start": {
                          "line": 395,
                          "column": 8
                        },
                        "end": {
                          "line": 395,
                          "column": 43
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 15315,
                        "end": 15349,
                        "loc": {
                          "start": {
                            "line": 395,
                            "column": 8
                          },
                          "end": {
                            "line": 395,
                            "column": 42
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 15315,
                          "end": 15334,
                          "loc": {
                            "start": {
                              "line": 395,
                              "column": 8
                            },
                            "end": {
                              "line": 395,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 15315,
                            "end": 15329,
                            "loc": {
                              "start": {
                                "line": 395,
                                "column": 8
                              },
                              "end": {
                                "line": 395,
                                "column": 22
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 15315,
                              "end": 15326,
                              "loc": {
                                "start": {
                                  "line": 395,
                                  "column": 8
                                },
                                "end": {
                                  "line": 395,
                                  "column": 19
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 15315,
                                "end": 15319,
                                "loc": {
                                  "start": {
                                    "line": 395,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 395,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 15320,
                                "end": 15326,
                                "loc": {
                                  "start": {
                                    "line": 395,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 395,
                                    "column": 19
                                  }
                                },
                                "name": "points"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Literal",
                              "start": 15327,
                              "end": 15328,
                              "loc": {
                                "start": {
                                  "line": 395,
                                  "column": 20
                                },
                                "end": {
                                  "line": 395,
                                  "column": 21
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            },
                            "computed": true
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 15330,
                            "end": 15334,
                            "loc": {
                              "start": {
                                "line": 395,
                                "column": 23
                              },
                              "end": {
                                "line": 395,
                                "column": 27
                              }
                            },
                            "name": "name"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 15337,
                          "end": 15349,
                          "loc": {
                            "start": {
                              "line": 395,
                              "column": 30
                            },
                            "end": {
                              "line": 395,
                              "column": 42
                            }
                          },
                          "value": "startPoint",
                          "rawValue": "startPoint",
                          "raw": "'startPoint'"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 15360,
                      "end": 15393,
                      "loc": {
                        "start": {
                          "line": 396,
                          "column": 8
                        },
                        "end": {
                          "line": 396,
                          "column": 41
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 15360,
                        "end": 15392,
                        "loc": {
                          "start": {
                            "line": 396,
                            "column": 8
                          },
                          "end": {
                            "line": 396,
                            "column": 40
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 15360,
                          "end": 15379,
                          "loc": {
                            "start": {
                              "line": 396,
                              "column": 8
                            },
                            "end": {
                              "line": 396,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 15360,
                            "end": 15374,
                            "loc": {
                              "start": {
                                "line": 396,
                                "column": 8
                              },
                              "end": {
                                "line": 396,
                                "column": 22
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 15360,
                              "end": 15371,
                              "loc": {
                                "start": {
                                  "line": 396,
                                  "column": 8
                                },
                                "end": {
                                  "line": 396,
                                  "column": 19
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 15360,
                                "end": 15364,
                                "loc": {
                                  "start": {
                                    "line": 396,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 396,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 15365,
                                "end": 15371,
                                "loc": {
                                  "start": {
                                    "line": 396,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 396,
                                    "column": 19
                                  }
                                },
                                "name": "points"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Literal",
                              "start": 15372,
                              "end": 15373,
                              "loc": {
                                "start": {
                                  "line": 396,
                                  "column": 20
                                },
                                "end": {
                                  "line": 396,
                                  "column": 21
                                }
                              },
                              "value": 1,
                              "rawValue": 1,
                              "raw": "1"
                            },
                            "computed": true
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 15375,
                            "end": 15379,
                            "loc": {
                              "start": {
                                "line": 396,
                                "column": 23
                              },
                              "end": {
                                "line": 396,
                                "column": 27
                              }
                            },
                            "name": "name"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 15382,
                          "end": 15392,
                          "loc": {
                            "start": {
                              "line": 396,
                              "column": 30
                            },
                            "end": {
                              "line": 396,
                              "column": 40
                            }
                          },
                          "value": "endPoint",
                          "rawValue": "endPoint",
                          "raw": "'endPoint'"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 15403,
                      "end": 15436,
                      "loc": {
                        "start": {
                          "line": 397,
                          "column": 8
                        },
                        "end": {
                          "line": 397,
                          "column": 41
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 15403,
                        "end": 15435,
                        "loc": {
                          "start": {
                            "line": 397,
                            "column": 8
                          },
                          "end": {
                            "line": 397,
                            "column": 40
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 15403,
                          "end": 15424,
                          "loc": {
                            "start": {
                              "line": 397,
                              "column": 8
                            },
                            "end": {
                              "line": 397,
                              "column": 29
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 15403,
                            "end": 15419,
                            "loc": {
                              "start": {
                                "line": 397,
                                "column": 8
                              },
                              "end": {
                                "line": 397,
                                "column": 24
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 15403,
                              "end": 15407,
                              "loc": {
                                "start": {
                                  "line": 397,
                                  "column": 8
                                },
                                "end": {
                                  "line": 397,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 15408,
                              "end": 15419,
                              "loc": {
                                "start": {
                                  "line": 397,
                                  "column": 13
                                },
                                "end": {
                                  "line": 397,
                                  "column": 24
                                }
                              },
                              "name": "centerPoint"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 15420,
                            "end": 15424,
                            "loc": {
                              "start": {
                                "line": 397,
                                "column": 25
                              },
                              "end": {
                                "line": 397,
                                "column": 29
                              }
                            },
                            "name": "name"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 15427,
                          "end": 15435,
                          "loc": {
                            "start": {
                              "line": 397,
                              "column": 32
                            },
                            "end": {
                              "line": 397,
                              "column": 40
                            }
                          },
                          "value": "center",
                          "rawValue": "center",
                          "raw": "'center'"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 15446,
                      "end": 15469,
                      "loc": {
                        "start": {
                          "line": 398,
                          "column": 8
                        },
                        "end": {
                          "line": 398,
                          "column": 31
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 15446,
                        "end": 15468,
                        "loc": {
                          "start": {
                            "line": 398,
                            "column": 8
                          },
                          "end": {
                            "line": 398,
                            "column": 30
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 15446,
                          "end": 15460,
                          "loc": {
                            "start": {
                              "line": 398,
                              "column": 8
                            },
                            "end": {
                              "line": 398,
                              "column": 22
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 15446,
                            "end": 15450,
                            "loc": {
                              "start": {
                                "line": 398,
                                "column": 8
                              },
                              "end": {
                                "line": 398,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 15451,
                            "end": 15460,
                            "loc": {
                              "start": {
                                "line": 398,
                                "column": 13
                              },
                              "end": {
                                "line": 398,
                                "column": 22
                              }
                            },
                            "name": "clockwise"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 15463,
                          "end": 15468,
                          "loc": {
                            "start": {
                              "line": 398,
                              "column": 25
                            },
                            "end": {
                              "line": 398,
                              "column": 30
                            }
                          },
                          "value": false,
                          "rawValue": false,
                          "raw": "false"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 15479,
                      "end": 15670,
                      "loc": {
                        "start": {
                          "line": 399,
                          "column": 8
                        },
                        "end": {
                          "line": 402,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 15479,
                        "end": 15669,
                        "loc": {
                          "start": {
                            "line": 399,
                            "column": 8
                          },
                          "end": {
                            "line": 402,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 15479,
                          "end": 15523,
                          "loc": {
                            "start": {
                              "line": 399,
                              "column": 8
                            },
                            "end": {
                              "line": 399,
                              "column": 52
                            }
                          },
                          "object": {
                            "type": "CallExpression",
                            "start": 15479,
                            "end": 15515,
                            "loc": {
                              "start": {
                                "line": 399,
                                "column": 8
                              },
                              "end": {
                                "line": 399,
                                "column": 44
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 15479,
                              "end": 15497,
                              "loc": {
                                "start": {
                                  "line": 399,
                                  "column": 8
                                },
                                "end": {
                                  "line": 399,
                                  "column": 26
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 15479,
                                "end": 15490,
                                "loc": {
                                  "start": {
                                    "line": 399,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 399,
                                    "column": 19
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 15479,
                                  "end": 15483,
                                  "loc": {
                                    "start": {
                                      "line": 399,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 399,
                                      "column": 12
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 15484,
                                  "end": 15490,
                                  "loc": {
                                    "start": {
                                      "line": 399,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 399,
                                      "column": 19
                                    }
                                  },
                                  "name": "points"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 15491,
                                "end": 15497,
                                "loc": {
                                  "start": {
                                    "line": 399,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 399,
                                    "column": 26
                                  }
                                },
                                "name": "concat"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 15498,
                                "end": 15514,
                                "loc": {
                                  "start": {
                                    "line": 399,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 399,
                                    "column": 43
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 15498,
                                  "end": 15502,
                                  "loc": {
                                    "start": {
                                      "line": 399,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 399,
                                      "column": 31
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 15503,
                                  "end": 15514,
                                  "loc": {
                                    "start": {
                                      "line": 399,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 399,
                                      "column": 43
                                    }
                                  },
                                  "name": "centerPoint"
                                },
                                "computed": false
                              }
                            ]
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 15516,
                            "end": 15523,
                            "loc": {
                              "start": {
                                "line": 399,
                                "column": 45
                              },
                              "end": {
                                "line": 399,
                                "column": 52
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 15524,
                            "end": 15668,
                            "loc": {
                              "start": {
                                "line": 399,
                                "column": 53
                              },
                              "end": {
                                "line": 402,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 15524,
                                "end": 15529,
                                "loc": {
                                  "start": {
                                    "line": 399,
                                    "column": 53
                                  },
                                  "end": {
                                    "line": 399,
                                    "column": 58
                                  }
                                },
                                "name": "point"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 15533,
                              "end": 15668,
                              "loc": {
                                "start": {
                                  "line": 399,
                                  "column": 62
                                },
                                "end": {
                                  "line": 402,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 15548,
                                  "end": 15598,
                                  "loc": {
                                    "start": {
                                      "line": 400,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 400,
                                      "column": 62
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 15548,
                                    "end": 15597,
                                    "loc": {
                                      "start": {
                                        "line": 400,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 400,
                                        "column": 61
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 15548,
                                      "end": 15556,
                                      "loc": {
                                        "start": {
                                          "line": 400,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 400,
                                          "column": 20
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 15548,
                                        "end": 15553,
                                        "loc": {
                                          "start": {
                                            "line": 400,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 400,
                                            "column": 17
                                          }
                                        },
                                        "name": "point"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 15554,
                                        "end": 15556,
                                        "loc": {
                                          "start": {
                                            "line": 400,
                                            "column": 18
                                          },
                                          "end": {
                                            "line": 400,
                                            "column": 20
                                          }
                                        },
                                        "name": "on"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Literal",
                                        "start": 15557,
                                        "end": 15564,
                                        "loc": {
                                          "start": {
                                            "line": 400,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 400,
                                            "column": 28
                                          }
                                        },
                                        "value": "moved",
                                        "rawValue": "moved",
                                        "raw": "'moved'"
                                      },
                                      {
                                        "type": "CallExpression",
                                        "start": 15566,
                                        "end": 15596,
                                        "loc": {
                                          "start": {
                                            "line": 400,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 400,
                                            "column": 60
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 15566,
                                          "end": 15590,
                                          "loc": {
                                            "start": {
                                              "line": 400,
                                              "column": 30
                                            },
                                            "end": {
                                              "line": 400,
                                              "column": 54
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 15566,
                                            "end": 15585,
                                            "loc": {
                                              "start": {
                                                "line": 400,
                                                "column": 30
                                              },
                                              "end": {
                                                "line": 400,
                                                "column": 49
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 15566,
                                              "end": 15570,
                                              "loc": {
                                                "start": {
                                                  "line": 400,
                                                  "column": 30
                                                },
                                                "end": {
                                                  "line": 400,
                                                  "column": 34
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 15571,
                                              "end": 15585,
                                              "loc": {
                                                "start": {
                                                  "line": 400,
                                                  "column": 35
                                                },
                                                "end": {
                                                  "line": 400,
                                                  "column": 49
                                                }
                                              },
                                              "name": "updateGeometry"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 15586,
                                            "end": 15590,
                                            "loc": {
                                              "start": {
                                                "line": 400,
                                                "column": 50
                                              },
                                              "end": {
                                                "line": 400,
                                                "column": 54
                                              }
                                            },
                                            "name": "bind"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "ThisExpression",
                                            "start": 15591,
                                            "end": 15595,
                                            "loc": {
                                              "start": {
                                                "line": 400,
                                                "column": 55
                                              },
                                              "end": {
                                                "line": 400,
                                                "column": 59
                                              }
                                            }
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 15612,
                                  "end": 15657,
                                  "loc": {
                                    "start": {
                                      "line": 401,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 401,
                                      "column": 57
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 15612,
                                    "end": 15656,
                                    "loc": {
                                      "start": {
                                        "line": 401,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 401,
                                        "column": 56
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 15612,
                                      "end": 15620,
                                      "loc": {
                                        "start": {
                                          "line": 401,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 401,
                                          "column": 20
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 15612,
                                        "end": 15617,
                                        "loc": {
                                          "start": {
                                            "line": 401,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 401,
                                            "column": 17
                                          }
                                        },
                                        "name": "point"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 15618,
                                        "end": 15620,
                                        "loc": {
                                          "start": {
                                            "line": 401,
                                            "column": 18
                                          },
                                          "end": {
                                            "line": 401,
                                            "column": 20
                                          }
                                        },
                                        "name": "on"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Literal",
                                        "start": 15621,
                                        "end": 15630,
                                        "loc": {
                                          "start": {
                                            "line": 401,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 401,
                                            "column": 30
                                          }
                                        },
                                        "value": "dragend",
                                        "rawValue": "dragend",
                                        "raw": "'dragend'"
                                      },
                                      {
                                        "type": "CallExpression",
                                        "start": 15632,
                                        "end": 15655,
                                        "loc": {
                                          "start": {
                                            "line": 401,
                                            "column": 32
                                          },
                                          "end": {
                                            "line": 401,
                                            "column": 55
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 15632,
                                          "end": 15649,
                                          "loc": {
                                            "start": {
                                              "line": 401,
                                              "column": 32
                                            },
                                            "end": {
                                              "line": 401,
                                              "column": 49
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 15632,
                                            "end": 15644,
                                            "loc": {
                                              "start": {
                                                "line": 401,
                                                "column": 32
                                              },
                                              "end": {
                                                "line": 401,
                                                "column": 44
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 15632,
                                              "end": 15636,
                                              "loc": {
                                                "start": {
                                                  "line": 401,
                                                  "column": 32
                                                },
                                                "end": {
                                                  "line": 401,
                                                  "column": 36
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 15637,
                                              "end": 15644,
                                              "loc": {
                                                "start": {
                                                  "line": 401,
                                                  "column": 37
                                                },
                                                "end": {
                                                  "line": 401,
                                                  "column": 44
                                                }
                                              },
                                              "name": "endDrag"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 15645,
                                            "end": 15649,
                                            "loc": {
                                              "start": {
                                                "line": 401,
                                                "column": 45
                                              },
                                              "end": {
                                                "line": 401,
                                                "column": 49
                                              }
                                            },
                                            "name": "bind"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "ThisExpression",
                                            "start": 15650,
                                            "end": 15654,
                                            "loc": {
                                              "start": {
                                                "line": 401,
                                                "column": 50
                                              },
                                              "end": {
                                                "line": 401,
                                                "column": 54
                                              }
                                            }
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                }
                              ]
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 15682,
                      "end": 15710,
                      "loc": {
                        "start": {
                          "line": 404,
                          "column": 8
                        },
                        "end": {
                          "line": 404,
                          "column": 36
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 15682,
                        "end": 15709,
                        "loc": {
                          "start": {
                            "line": 404,
                            "column": 8
                          },
                          "end": {
                            "line": 404,
                            "column": 35
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 15682,
                          "end": 15692,
                          "loc": {
                            "start": {
                              "line": 404,
                              "column": 8
                            },
                            "end": {
                              "line": 404,
                              "column": 18
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 15682,
                            "end": 15686,
                            "loc": {
                              "start": {
                                "line": 404,
                                "column": 8
                              },
                              "end": {
                                "line": 404,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 15687,
                            "end": 15692,
                            "loc": {
                              "start": {
                                "line": 404,
                                "column": 13
                              },
                              "end": {
                                "line": 404,
                                "column": 18
                              }
                            },
                            "name": "width"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 15695,
                          "end": 15709,
                          "loc": {
                            "start": {
                              "line": 404,
                              "column": 21
                            },
                            "end": {
                              "line": 404,
                              "column": 35
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 15695,
                            "end": 15699,
                            "loc": {
                              "start": {
                                "line": 404,
                                "column": 21
                              },
                              "end": {
                                "line": 404,
                                "column": 25
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 15700,
                            "end": 15709,
                            "loc": {
                              "start": {
                                "line": 404,
                                "column": 26
                              },
                              "end": {
                                "line": 404,
                                "column": 35
                              }
                            },
                            "name": "thickness"
                          },
                          "computed": false
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 15720,
                      "end": 15817,
                      "loc": {
                        "start": {
                          "line": 405,
                          "column": 8
                        },
                        "end": {
                          "line": 405,
                          "column": 105
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 15720,
                        "end": 15816,
                        "loc": {
                          "start": {
                            "line": 405,
                            "column": 8
                          },
                          "end": {
                            "line": 405,
                            "column": 104
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 15720,
                          "end": 15728,
                          "loc": {
                            "start": {
                              "line": 405,
                              "column": 8
                            },
                            "end": {
                              "line": 405,
                              "column": 16
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 15720,
                            "end": 15724,
                            "loc": {
                              "start": {
                                "line": 405,
                                "column": 8
                              },
                              "end": {
                                "line": 405,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 15725,
                            "end": 15728,
                            "loc": {
                              "start": {
                                "line": 405,
                                "column": 13
                              },
                              "end": {
                                "line": 405,
                                "column": 16
                              }
                            },
                            "name": "add"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 15729,
                            "end": 15743,
                            "loc": {
                              "start": {
                                "line": 405,
                                "column": 17
                              },
                              "end": {
                                "line": 405,
                                "column": 31
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 15729,
                              "end": 15740,
                              "loc": {
                                "start": {
                                  "line": 405,
                                  "column": 17
                                },
                                "end": {
                                  "line": 405,
                                  "column": 28
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 15729,
                                "end": 15733,
                                "loc": {
                                  "start": {
                                    "line": 405,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 405,
                                    "column": 21
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 15734,
                                "end": 15740,
                                "loc": {
                                  "start": {
                                    "line": 405,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 405,
                                    "column": 28
                                  }
                                },
                                "name": "points"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Literal",
                              "start": 15741,
                              "end": 15742,
                              "loc": {
                                "start": {
                                  "line": 405,
                                  "column": 29
                                },
                                "end": {
                                  "line": 405,
                                  "column": 30
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            },
                            "computed": true
                          },
                          {
                            "type": "MemberExpression",
                            "start": 15745,
                            "end": 15759,
                            "loc": {
                              "start": {
                                "line": 405,
                                "column": 33
                              },
                              "end": {
                                "line": 405,
                                "column": 47
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 15745,
                              "end": 15756,
                              "loc": {
                                "start": {
                                  "line": 405,
                                  "column": 33
                                },
                                "end": {
                                  "line": 405,
                                  "column": 44
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 15745,
                                "end": 15749,
                                "loc": {
                                  "start": {
                                    "line": 405,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 405,
                                    "column": 37
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 15750,
                                "end": 15756,
                                "loc": {
                                  "start": {
                                    "line": 405,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 405,
                                    "column": 44
                                  }
                                },
                                "name": "points"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Literal",
                              "start": 15757,
                              "end": 15758,
                              "loc": {
                                "start": {
                                  "line": 405,
                                  "column": 45
                                },
                                "end": {
                                  "line": 405,
                                  "column": 46
                                }
                              },
                              "value": 1,
                              "rawValue": 1,
                              "raw": "1"
                            },
                            "computed": true
                          },
                          {
                            "type": "MemberExpression",
                            "start": 15761,
                            "end": 15777,
                            "loc": {
                              "start": {
                                "line": 405,
                                "column": 49
                              },
                              "end": {
                                "line": 405,
                                "column": 65
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 15761,
                              "end": 15765,
                              "loc": {
                                "start": {
                                  "line": 405,
                                  "column": 49
                                },
                                "end": {
                                  "line": 405,
                                  "column": 53
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 15766,
                              "end": 15777,
                              "loc": {
                                "start": {
                                  "line": 405,
                                  "column": 54
                                },
                                "end": {
                                  "line": 405,
                                  "column": 65
                                }
                              },
                              "name": "centerPoint"
                            },
                            "computed": false
                          },
                          {
                            "type": "MemberExpression",
                            "start": 15779,
                            "end": 15788,
                            "loc": {
                              "start": {
                                "line": 405,
                                "column": 67
                              },
                              "end": {
                                "line": 405,
                                "column": 76
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 15779,
                              "end": 15783,
                              "loc": {
                                "start": {
                                  "line": 405,
                                  "column": 67
                                },
                                "end": {
                                  "line": 405,
                                  "column": 71
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 15784,
                              "end": 15788,
                              "loc": {
                                "start": {
                                  "line": 405,
                                  "column": 72
                                },
                                "end": {
                                  "line": 405,
                                  "column": 76
                                }
                              },
                              "name": "mesh"
                            },
                            "computed": false
                          },
                          {
                            "type": "MemberExpression",
                            "start": 15790,
                            "end": 15815,
                            "loc": {
                              "start": {
                                "line": 405,
                                "column": 78
                              },
                              "end": {
                                "line": 405,
                                "column": 103
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 15790,
                              "end": 15794,
                              "loc": {
                                "start": {
                                  "line": 405,
                                  "column": 78
                                },
                                "end": {
                                  "line": 405,
                                  "column": 82
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 15795,
                              "end": 15815,
                              "loc": {
                                "start": {
                                  "line": 405,
                                  "column": 83
                                },
                                "end": {
                                  "line": 405,
                                  "column": 103
                                }
                              },
                              "name": "constraintsSubstrate"
                            },
                            "computed": false
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 15827,
                      "end": 15849,
                      "loc": {
                        "start": {
                          "line": 406,
                          "column": 8
                        },
                        "end": {
                          "line": 406,
                          "column": 30
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 15827,
                        "end": 15848,
                        "loc": {
                          "start": {
                            "line": 406,
                            "column": 8
                          },
                          "end": {
                            "line": 406,
                            "column": 29
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 15827,
                          "end": 15846,
                          "loc": {
                            "start": {
                              "line": 406,
                              "column": 8
                            },
                            "end": {
                              "line": 406,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 15827,
                            "end": 15831,
                            "loc": {
                              "start": {
                                "line": 406,
                                "column": 8
                              },
                              "end": {
                                "line": 406,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 15832,
                            "end": 15846,
                            "loc": {
                              "start": {
                                "line": 406,
                                "column": 13
                              },
                              "end": {
                                "line": 406,
                                "column": 27
                              }
                            },
                            "name": "updateGeometry"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 15864,
              "end": 16133,
              "loc": {
                "start": {
                  "line": 409,
                  "column": 4
                },
                "end": {
                  "line": 413,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 15864,
                "end": 15881,
                "loc": {
                  "start": {
                    "line": 409,
                    "column": 4
                  },
                  "end": {
                    "line": 409,
                    "column": 21
                  }
                },
                "name": "getMiddlePosition"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 15881,
                "end": 16133,
                "loc": {
                  "start": {
                    "line": 409,
                    "column": 21
                  },
                  "end": {
                    "line": 413,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 15884,
                  "end": 16133,
                  "loc": {
                    "start": {
                      "line": 409,
                      "column": 24
                    },
                    "end": {
                      "line": 413,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 15943,
                      "end": 15995,
                      "loc": {
                        "start": {
                          "line": 411,
                          "column": 8
                        },
                        "end": {
                          "line": 411,
                          "column": 60
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 15947,
                          "end": 15994,
                          "loc": {
                            "start": {
                              "line": 411,
                              "column": 12
                            },
                            "end": {
                              "line": 411,
                              "column": 59
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 15947,
                            "end": 15952,
                            "loc": {
                              "start": {
                                "line": 411,
                                "column": 12
                              },
                              "end": {
                                "line": 411,
                                "column": 17
                              }
                            },
                            "name": "angle",
                            "leadingComments": null
                          },
                          "init": {
                            "type": "BinaryExpression",
                            "start": 15955,
                            "end": 15994,
                            "loc": {
                              "start": {
                                "line": 411,
                                "column": 20
                              },
                              "end": {
                                "line": 411,
                                "column": 59
                              }
                            },
                            "left": {
                              "type": "BinaryExpression",
                              "start": 15956,
                              "end": 15987,
                              "loc": {
                                "start": {
                                  "line": 411,
                                  "column": 21
                                },
                                "end": {
                                  "line": 411,
                                  "column": 52
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 15956,
                                "end": 15971,
                                "loc": {
                                  "start": {
                                    "line": 411,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 411,
                                    "column": 36
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 15956,
                                  "end": 15960,
                                  "loc": {
                                    "start": {
                                      "line": 411,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 411,
                                      "column": 25
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 15961,
                                  "end": 15971,
                                  "loc": {
                                    "start": {
                                      "line": 411,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 411,
                                      "column": 36
                                    }
                                  },
                                  "name": "angleStart"
                                },
                                "computed": false
                              },
                              "operator": "+",
                              "right": {
                                "type": "MemberExpression",
                                "start": 15974,
                                "end": 15987,
                                "loc": {
                                  "start": {
                                    "line": 411,
                                    "column": 39
                                  },
                                  "end": {
                                    "line": 411,
                                    "column": 52
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 15974,
                                  "end": 15978,
                                  "loc": {
                                    "start": {
                                      "line": 411,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 411,
                                      "column": 43
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 15979,
                                  "end": 15987,
                                  "loc": {
                                    "start": {
                                      "line": 411,
                                      "column": 44
                                    },
                                    "end": {
                                      "line": 411,
                                      "column": 52
                                    }
                                  },
                                  "name": "angleEnd"
                                },
                                "computed": false
                              },
                              "parenthesizedExpression": true
                            },
                            "operator": "*",
                            "right": {
                              "type": "Literal",
                              "start": 15991,
                              "end": 15994,
                              "loc": {
                                "start": {
                                  "line": 411,
                                  "column": 56
                                },
                                "end": {
                                  "line": 411,
                                  "column": 59
                                }
                              },
                              "value": 0.5,
                              "rawValue": 0.5,
                              "raw": "0.5"
                            }
                          },
                          "leadingComments": null
                        }
                      ],
                      "kind": "var",
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "returns middle point on circular arc",
                          "start": 15895,
                          "end": 15933,
                          "loc": {
                            "start": {
                              "line": 410,
                              "column": 8
                            },
                            "end": {
                              "line": 410,
                              "column": 46
                            }
                          },
                          "range": [
                            15895,
                            15933
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 16005,
                      "end": 16126,
                      "loc": {
                        "start": {
                          "line": 412,
                          "column": 8
                        },
                        "end": {
                          "line": 412,
                          "column": 129
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 16012,
                        "end": 16125,
                        "loc": {
                          "start": {
                            "line": 412,
                            "column": 15
                          },
                          "end": {
                            "line": 412,
                            "column": 128
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 16012,
                          "end": 16098,
                          "loc": {
                            "start": {
                              "line": 412,
                              "column": 15
                            },
                            "end": {
                              "line": 412,
                              "column": 101
                            }
                          },
                          "object": {
                            "type": "CallExpression",
                            "start": 16012,
                            "end": 16094,
                            "loc": {
                              "start": {
                                "line": 412,
                                "column": 15
                              },
                              "end": {
                                "line": 412,
                                "column": 97
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 16012,
                              "end": 16081,
                              "loc": {
                                "start": {
                                  "line": 412,
                                  "column": 15
                                },
                                "end": {
                                  "line": 412,
                                  "column": 84
                                }
                              },
                              "object": {
                                "type": "NewExpression",
                                "start": 16012,
                                "end": 16066,
                                "loc": {
                                  "start": {
                                    "line": 412,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 412,
                                    "column": 69
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 16016,
                                  "end": 16029,
                                  "loc": {
                                    "start": {
                                      "line": 412,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 412,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 16016,
                                    "end": 16021,
                                    "loc": {
                                      "start": {
                                        "line": 412,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 412,
                                        "column": 24
                                      }
                                    },
                                    "name": "THREE"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 16022,
                                    "end": 16029,
                                    "loc": {
                                      "start": {
                                        "line": 412,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 412,
                                        "column": 32
                                      }
                                    },
                                    "name": "Vector3"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "CallExpression",
                                    "start": 16030,
                                    "end": 16045,
                                    "loc": {
                                      "start": {
                                        "line": 412,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 412,
                                        "column": 48
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 16030,
                                      "end": 16038,
                                      "loc": {
                                        "start": {
                                          "line": 412,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 412,
                                          "column": 41
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 16030,
                                        "end": 16034,
                                        "loc": {
                                          "start": {
                                            "line": 412,
                                            "column": 33
                                          },
                                          "end": {
                                            "line": 412,
                                            "column": 37
                                          }
                                        },
                                        "name": "Math"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 16035,
                                        "end": 16038,
                                        "loc": {
                                          "start": {
                                            "line": 412,
                                            "column": 38
                                          },
                                          "end": {
                                            "line": 412,
                                            "column": 41
                                          }
                                        },
                                        "name": "cos"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 16039,
                                        "end": 16044,
                                        "loc": {
                                          "start": {
                                            "line": 412,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 412,
                                            "column": 47
                                          }
                                        },
                                        "name": "angle"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "CallExpression",
                                    "start": 16047,
                                    "end": 16062,
                                    "loc": {
                                      "start": {
                                        "line": 412,
                                        "column": 50
                                      },
                                      "end": {
                                        "line": 412,
                                        "column": 65
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 16047,
                                      "end": 16055,
                                      "loc": {
                                        "start": {
                                          "line": 412,
                                          "column": 50
                                        },
                                        "end": {
                                          "line": 412,
                                          "column": 58
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 16047,
                                        "end": 16051,
                                        "loc": {
                                          "start": {
                                            "line": 412,
                                            "column": 50
                                          },
                                          "end": {
                                            "line": 412,
                                            "column": 54
                                          }
                                        },
                                        "name": "Math"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 16052,
                                        "end": 16055,
                                        "loc": {
                                          "start": {
                                            "line": 412,
                                            "column": 55
                                          },
                                          "end": {
                                            "line": 412,
                                            "column": 58
                                          }
                                        },
                                        "name": "sin"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 16056,
                                        "end": 16061,
                                        "loc": {
                                          "start": {
                                            "line": 412,
                                            "column": 59
                                          },
                                          "end": {
                                            "line": 412,
                                            "column": 64
                                          }
                                        },
                                        "name": "angle"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "Literal",
                                    "start": 16064,
                                    "end": 16065,
                                    "loc": {
                                      "start": {
                                        "line": 412,
                                        "column": 67
                                      },
                                      "end": {
                                        "line": 412,
                                        "column": 68
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  }
                                ]
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 16067,
                                "end": 16081,
                                "loc": {
                                  "start": {
                                    "line": 412,
                                    "column": 70
                                  },
                                  "end": {
                                    "line": 412,
                                    "column": 84
                                  }
                                },
                                "name": "multiplyScalar"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 16082,
                                "end": 16093,
                                "loc": {
                                  "start": {
                                    "line": 412,
                                    "column": 85
                                  },
                                  "end": {
                                    "line": 412,
                                    "column": 96
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 16082,
                                  "end": 16086,
                                  "loc": {
                                    "start": {
                                      "line": 412,
                                      "column": 85
                                    },
                                    "end": {
                                      "line": 412,
                                      "column": 89
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 16087,
                                  "end": 16093,
                                  "loc": {
                                    "start": {
                                      "line": 412,
                                      "column": 90
                                    },
                                    "end": {
                                      "line": 412,
                                      "column": 96
                                    }
                                  },
                                  "name": "radius"
                                },
                                "computed": false
                              }
                            ]
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 16095,
                            "end": 16098,
                            "loc": {
                              "start": {
                                "line": 412,
                                "column": 98
                              },
                              "end": {
                                "line": 412,
                                "column": 101
                              }
                            },
                            "name": "add"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 16099,
                            "end": 16124,
                            "loc": {
                              "start": {
                                "line": 412,
                                "column": 102
                              },
                              "end": {
                                "line": 412,
                                "column": 127
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 16099,
                              "end": 16115,
                              "loc": {
                                "start": {
                                  "line": 412,
                                  "column": 102
                                },
                                "end": {
                                  "line": 412,
                                  "column": 118
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 16099,
                                "end": 16103,
                                "loc": {
                                  "start": {
                                    "line": 412,
                                    "column": 102
                                  },
                                  "end": {
                                    "line": 412,
                                    "column": 106
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 16104,
                                "end": 16115,
                                "loc": {
                                  "start": {
                                    "line": 412,
                                    "column": 107
                                  },
                                  "end": {
                                    "line": 412,
                                    "column": 118
                                  }
                                },
                                "name": "centerPoint"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 16116,
                              "end": 16124,
                              "loc": {
                                "start": {
                                  "line": 412,
                                  "column": 119
                                },
                                "end": {
                                  "line": 412,
                                  "column": 127
                                }
                              },
                              "name": "position"
                            },
                            "computed": false
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 16141,
              "end": 16552,
              "loc": {
                "start": {
                  "line": 415,
                  "column": 4
                },
                "end": {
                  "line": 425,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 16141,
                "end": 16151,
                "loc": {
                  "start": {
                    "line": 415,
                    "column": 4
                  },
                  "end": {
                    "line": 415,
                    "column": 14
                  }
                },
                "name": "getTangent"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 16151,
                "end": 16552,
                "loc": {
                  "start": {
                    "line": 415,
                    "column": 14
                  },
                  "end": {
                    "line": 425,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 16152,
                    "end": 16159,
                    "loc": {
                      "start": {
                        "line": 415,
                        "column": 15
                      },
                      "end": {
                        "line": 415,
                        "column": 22
                      }
                    },
                    "name": "atPoint"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 16161,
                  "end": 16552,
                  "loc": {
                    "start": {
                      "line": 415,
                      "column": 24
                    },
                    "end": {
                      "line": 425,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 16219,
                      "end": 16279,
                      "loc": {
                        "start": {
                          "line": 417,
                          "column": 8
                        },
                        "end": {
                          "line": 417,
                          "column": 68
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 16223,
                          "end": 16278,
                          "loc": {
                            "start": {
                              "line": 417,
                              "column": 12
                            },
                            "end": {
                              "line": 417,
                              "column": 67
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 16223,
                            "end": 16229,
                            "loc": {
                              "start": {
                                "line": 417,
                                "column": 12
                              },
                              "end": {
                                "line": 417,
                                "column": 18
                              }
                            },
                            "name": "radVec",
                            "leadingComments": null
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 16232,
                            "end": 16278,
                            "loc": {
                              "start": {
                                "line": 417,
                                "column": 21
                              },
                              "end": {
                                "line": 417,
                                "column": 67
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 16232,
                              "end": 16251,
                              "loc": {
                                "start": {
                                  "line": 417,
                                  "column": 21
                                },
                                "end": {
                                  "line": 417,
                                  "column": 40
                                }
                              },
                              "object": {
                                "type": "CallExpression",
                                "start": 16232,
                                "end": 16247,
                                "loc": {
                                  "start": {
                                    "line": 417,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 417,
                                    "column": 36
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 16232,
                                  "end": 16245,
                                  "loc": {
                                    "start": {
                                      "line": 417,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 417,
                                      "column": 34
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 16232,
                                    "end": 16239,
                                    "loc": {
                                      "start": {
                                        "line": 417,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 417,
                                        "column": 28
                                      }
                                    },
                                    "name": "atPoint"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 16240,
                                    "end": 16245,
                                    "loc": {
                                      "start": {
                                        "line": 417,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 417,
                                        "column": 34
                                      }
                                    },
                                    "name": "clone"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 16248,
                                "end": 16251,
                                "loc": {
                                  "start": {
                                    "line": 417,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 417,
                                    "column": 40
                                  }
                                },
                                "name": "sub"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 16252,
                                "end": 16277,
                                "loc": {
                                  "start": {
                                    "line": 417,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 417,
                                    "column": 66
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 16252,
                                  "end": 16268,
                                  "loc": {
                                    "start": {
                                      "line": 417,
                                      "column": 41
                                    },
                                    "end": {
                                      "line": 417,
                                      "column": 57
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 16252,
                                    "end": 16256,
                                    "loc": {
                                      "start": {
                                        "line": 417,
                                        "column": 41
                                      },
                                      "end": {
                                        "line": 417,
                                        "column": 45
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 16257,
                                    "end": 16268,
                                    "loc": {
                                      "start": {
                                        "line": 417,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 417,
                                        "column": 57
                                      }
                                    },
                                    "name": "centerPoint"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 16269,
                                  "end": 16277,
                                  "loc": {
                                    "start": {
                                      "line": 417,
                                      "column": 58
                                    },
                                    "end": {
                                      "line": 417,
                                      "column": 66
                                    }
                                  },
                                  "name": "position"
                                },
                                "computed": false
                              }
                            ]
                          },
                          "leadingComments": null
                        }
                      ],
                      "kind": "var",
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "returns unit tangent or zero vector",
                          "start": 16172,
                          "end": 16209,
                          "loc": {
                            "start": {
                              "line": 416,
                              "column": 8
                            },
                            "end": {
                              "line": 416,
                              "column": 45
                            }
                          },
                          "range": [
                            16172,
                            16209
                          ]
                        }
                      ]
                    },
                    {
                      "type": "IfStatement",
                      "start": 16289,
                      "end": 16363,
                      "loc": {
                        "start": {
                          "line": 418,
                          "column": 8
                        },
                        "end": {
                          "line": 419,
                          "column": 44
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 16293,
                        "end": 16316,
                        "loc": {
                          "start": {
                            "line": 418,
                            "column": 12
                          },
                          "end": {
                            "line": 418,
                            "column": 35
                          }
                        },
                        "left": {
                          "type": "CallExpression",
                          "start": 16293,
                          "end": 16308,
                          "loc": {
                            "start": {
                              "line": 418,
                              "column": 12
                            },
                            "end": {
                              "line": 418,
                              "column": 27
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 16293,
                            "end": 16306,
                            "loc": {
                              "start": {
                                "line": 418,
                                "column": 12
                              },
                              "end": {
                                "line": 418,
                                "column": 25
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 16293,
                              "end": 16299,
                              "loc": {
                                "start": {
                                  "line": 418,
                                  "column": 12
                                },
                                "end": {
                                  "line": 418,
                                  "column": 18
                                }
                              },
                              "name": "radVec"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 16300,
                              "end": 16306,
                              "loc": {
                                "start": {
                                  "line": 418,
                                  "column": 19
                                },
                                "end": {
                                  "line": 418,
                                  "column": 25
                                }
                              },
                              "name": "length"
                            },
                            "computed": false
                          },
                          "arguments": []
                        },
                        "operator": "<=",
                        "right": {
                          "type": "Literal",
                          "start": 16312,
                          "end": 16316,
                          "loc": {
                            "start": {
                              "line": 418,
                              "column": 31
                            },
                            "end": {
                              "line": 418,
                              "column": 35
                            }
                          },
                          "value": 1e-9,
                          "rawValue": 1e-9,
                          "raw": "1e-9"
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 16329,
                        "end": 16363,
                        "loc": {
                          "start": {
                            "line": 419,
                            "column": 10
                          },
                          "end": {
                            "line": 419,
                            "column": 44
                          }
                        },
                        "argument": {
                          "type": "NewExpression",
                          "start": 16336,
                          "end": 16362,
                          "loc": {
                            "start": {
                              "line": 419,
                              "column": 17
                            },
                            "end": {
                              "line": 419,
                              "column": 43
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 16340,
                            "end": 16353,
                            "loc": {
                              "start": {
                                "line": 419,
                                "column": 21
                              },
                              "end": {
                                "line": 419,
                                "column": 34
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 16340,
                              "end": 16345,
                              "loc": {
                                "start": {
                                  "line": 419,
                                  "column": 21
                                },
                                "end": {
                                  "line": 419,
                                  "column": 26
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 16346,
                              "end": 16353,
                              "loc": {
                                "start": {
                                  "line": 419,
                                  "column": 27
                                },
                                "end": {
                                  "line": 419,
                                  "column": 34
                                }
                              },
                              "name": "Vector3"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Literal",
                              "start": 16354,
                              "end": 16355,
                              "loc": {
                                "start": {
                                  "line": 419,
                                  "column": 35
                                },
                                "end": {
                                  "line": 419,
                                  "column": 36
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            },
                            {
                              "type": "Literal",
                              "start": 16357,
                              "end": 16358,
                              "loc": {
                                "start": {
                                  "line": 419,
                                  "column": 38
                                },
                                "end": {
                                  "line": 419,
                                  "column": 39
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            },
                            {
                              "type": "Literal",
                              "start": 16360,
                              "end": 16361,
                              "loc": {
                                "start": {
                                  "line": 419,
                                  "column": 41
                                },
                                "end": {
                                  "line": 419,
                                  "column": 42
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            }
                          ]
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 16373,
                      "end": 16392,
                      "loc": {
                        "start": {
                          "line": 420,
                          "column": 8
                        },
                        "end": {
                          "line": 420,
                          "column": 27
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 16373,
                        "end": 16391,
                        "loc": {
                          "start": {
                            "line": 420,
                            "column": 8
                          },
                          "end": {
                            "line": 420,
                            "column": 26
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 16373,
                          "end": 16389,
                          "loc": {
                            "start": {
                              "line": 420,
                              "column": 8
                            },
                            "end": {
                              "line": 420,
                              "column": 24
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 16373,
                            "end": 16379,
                            "loc": {
                              "start": {
                                "line": 420,
                                "column": 8
                              },
                              "end": {
                                "line": 420,
                                "column": 14
                              }
                            },
                            "name": "radVec"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 16380,
                            "end": 16389,
                            "loc": {
                              "start": {
                                "line": 420,
                                "column": 15
                              },
                              "end": {
                                "line": 420,
                                "column": 24
                              }
                            },
                            "name": "normalize"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 16402,
                      "end": 16460,
                      "loc": {
                        "start": {
                          "line": 421,
                          "column": 8
                        },
                        "end": {
                          "line": 421,
                          "column": 66
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 16406,
                          "end": 16459,
                          "loc": {
                            "start": {
                              "line": 421,
                              "column": 12
                            },
                            "end": {
                              "line": 421,
                              "column": 65
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 16406,
                            "end": 16413,
                            "loc": {
                              "start": {
                                "line": 421,
                                "column": 12
                              },
                              "end": {
                                "line": 421,
                                "column": 19
                              }
                            },
                            "name": "tangVec"
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 16416,
                            "end": 16459,
                            "loc": {
                              "start": {
                                "line": 421,
                                "column": 22
                              },
                              "end": {
                                "line": 421,
                                "column": 65
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 16420,
                              "end": 16433,
                              "loc": {
                                "start": {
                                  "line": 421,
                                  "column": 26
                                },
                                "end": {
                                  "line": 421,
                                  "column": 39
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 16420,
                                "end": 16425,
                                "loc": {
                                  "start": {
                                    "line": 421,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 421,
                                    "column": 31
                                  }
                                },
                                "name": "THREE"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 16426,
                                "end": 16433,
                                "loc": {
                                  "start": {
                                    "line": 421,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 421,
                                    "column": 39
                                  }
                                },
                                "name": "Vector3"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "UnaryExpression",
                                "start": 16434,
                                "end": 16443,
                                "loc": {
                                  "start": {
                                    "line": 421,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 421,
                                    "column": 49
                                  }
                                },
                                "operator": "-",
                                "prefix": true,
                                "argument": {
                                  "type": "MemberExpression",
                                  "start": 16435,
                                  "end": 16443,
                                  "loc": {
                                    "start": {
                                      "line": 421,
                                      "column": 41
                                    },
                                    "end": {
                                      "line": 421,
                                      "column": 49
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 16435,
                                    "end": 16441,
                                    "loc": {
                                      "start": {
                                        "line": 421,
                                        "column": 41
                                      },
                                      "end": {
                                        "line": 421,
                                        "column": 47
                                      }
                                    },
                                    "name": "radVec"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 16442,
                                    "end": 16443,
                                    "loc": {
                                      "start": {
                                        "line": 421,
                                        "column": 48
                                      },
                                      "end": {
                                        "line": 421,
                                        "column": 49
                                      }
                                    },
                                    "name": "y"
                                  },
                                  "computed": false
                                }
                              },
                              {
                                "type": "MemberExpression",
                                "start": 16445,
                                "end": 16453,
                                "loc": {
                                  "start": {
                                    "line": 421,
                                    "column": 51
                                  },
                                  "end": {
                                    "line": 421,
                                    "column": 59
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 16445,
                                  "end": 16451,
                                  "loc": {
                                    "start": {
                                      "line": 421,
                                      "column": 51
                                    },
                                    "end": {
                                      "line": 421,
                                      "column": 57
                                    }
                                  },
                                  "name": "radVec"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 16452,
                                  "end": 16453,
                                  "loc": {
                                    "start": {
                                      "line": 421,
                                      "column": 58
                                    },
                                    "end": {
                                      "line": 421,
                                      "column": 59
                                    }
                                  },
                                  "name": "x"
                                },
                                "computed": false
                              },
                              {
                                "type": "Literal",
                                "start": 16455,
                                "end": 16458,
                                "loc": {
                                  "start": {
                                    "line": 421,
                                    "column": 61
                                  },
                                  "end": {
                                    "line": 421,
                                    "column": 64
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0.0"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 16470,
                      "end": 16520,
                      "loc": {
                        "start": {
                          "line": 422,
                          "column": 8
                        },
                        "end": {
                          "line": 423,
                          "column": 29
                        }
                      },
                      "test": {
                        "type": "MemberExpression",
                        "start": 16474,
                        "end": 16488,
                        "loc": {
                          "start": {
                            "line": 422,
                            "column": 12
                          },
                          "end": {
                            "line": 422,
                            "column": 26
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 16474,
                          "end": 16478,
                          "loc": {
                            "start": {
                              "line": 422,
                              "column": 12
                            },
                            "end": {
                              "line": 422,
                              "column": 16
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 16479,
                          "end": 16488,
                          "loc": {
                            "start": {
                              "line": 422,
                              "column": 17
                            },
                            "end": {
                              "line": 422,
                              "column": 26
                            }
                          },
                          "name": "clockwise"
                        },
                        "computed": false
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 16503,
                        "end": 16520,
                        "loc": {
                          "start": {
                            "line": 423,
                            "column": 12
                          },
                          "end": {
                            "line": 423,
                            "column": 29
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 16503,
                          "end": 16519,
                          "loc": {
                            "start": {
                              "line": 423,
                              "column": 12
                            },
                            "end": {
                              "line": 423,
                              "column": 28
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 16503,
                            "end": 16517,
                            "loc": {
                              "start": {
                                "line": 423,
                                "column": 12
                              },
                              "end": {
                                "line": 423,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 16503,
                              "end": 16510,
                              "loc": {
                                "start": {
                                  "line": 423,
                                  "column": 12
                                },
                                "end": {
                                  "line": 423,
                                  "column": 19
                                }
                              },
                              "name": "tangVec"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 16511,
                              "end": 16517,
                              "loc": {
                                "start": {
                                  "line": 423,
                                  "column": 20
                                },
                                "end": {
                                  "line": 423,
                                  "column": 26
                                }
                              },
                              "name": "negate"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 16530,
                      "end": 16545,
                      "loc": {
                        "start": {
                          "line": 424,
                          "column": 8
                        },
                        "end": {
                          "line": 424,
                          "column": 23
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 16537,
                        "end": 16544,
                        "loc": {
                          "start": {
                            "line": 424,
                            "column": 15
                          },
                          "end": {
                            "line": 424,
                            "column": 22
                          }
                        },
                        "name": "tangVec"
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 16560,
              "end": 16638,
              "loc": {
                "start": {
                  "line": 427,
                  "column": 4
                },
                "end": {
                  "line": 429,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 16560,
                "end": 16568,
                "loc": {
                  "start": {
                    "line": 427,
                    "column": 4
                  },
                  "end": {
                    "line": 427,
                    "column": 12
                  }
                },
                "name": "getAngle"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 16568,
                "end": 16638,
                "loc": {
                  "start": {
                    "line": 427,
                    "column": 12
                  },
                  "end": {
                    "line": 429,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 16571,
                  "end": 16638,
                  "loc": {
                    "start": {
                      "line": 427,
                      "column": 15
                    },
                    "end": {
                      "line": 429,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 16582,
                      "end": 16631,
                      "loc": {
                        "start": {
                          "line": 428,
                          "column": 8
                        },
                        "end": {
                          "line": 428,
                          "column": 57
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 16589,
                        "end": 16630,
                        "loc": {
                          "start": {
                            "line": 428,
                            "column": 15
                          },
                          "end": {
                            "line": 428,
                            "column": 56
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 16589,
                          "end": 16597,
                          "loc": {
                            "start": {
                              "line": 428,
                              "column": 15
                            },
                            "end": {
                              "line": 428,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 16589,
                            "end": 16593,
                            "loc": {
                              "start": {
                                "line": 428,
                                "column": 15
                              },
                              "end": {
                                "line": 428,
                                "column": 19
                              }
                            },
                            "name": "Math"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 16594,
                            "end": 16597,
                            "loc": {
                              "start": {
                                "line": 428,
                                "column": 20
                              },
                              "end": {
                                "line": 428,
                                "column": 23
                              }
                            },
                            "name": "abs"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "BinaryExpression",
                            "start": 16598,
                            "end": 16629,
                            "loc": {
                              "start": {
                                "line": 428,
                                "column": 24
                              },
                              "end": {
                                "line": 428,
                                "column": 55
                              }
                            },
                            "left": {
                              "type": "MemberExpression",
                              "start": 16598,
                              "end": 16611,
                              "loc": {
                                "start": {
                                  "line": 428,
                                  "column": 24
                                },
                                "end": {
                                  "line": 428,
                                  "column": 37
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 16598,
                                "end": 16602,
                                "loc": {
                                  "start": {
                                    "line": 428,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 428,
                                    "column": 28
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 16603,
                                "end": 16611,
                                "loc": {
                                  "start": {
                                    "line": 428,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 428,
                                    "column": 37
                                  }
                                },
                                "name": "angleEnd"
                              },
                              "computed": false
                            },
                            "operator": "-",
                            "right": {
                              "type": "MemberExpression",
                              "start": 16614,
                              "end": 16629,
                              "loc": {
                                "start": {
                                  "line": 428,
                                  "column": 40
                                },
                                "end": {
                                  "line": 428,
                                  "column": 55
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 16614,
                                "end": 16618,
                                "loc": {
                                  "start": {
                                    "line": 428,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 428,
                                    "column": 44
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 16619,
                                "end": 16629,
                                "loc": {
                                  "start": {
                                    "line": 428,
                                    "column": 45
                                  },
                                  "end": {
                                    "line": 428,
                                    "column": 55
                                  }
                                },
                                "name": "angleStart"
                              },
                              "computed": false
                            }
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 16644,
              "end": 16711,
              "loc": {
                "start": {
                  "line": 430,
                  "column": 4
                },
                "end": {
                  "line": 432,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 16644,
                "end": 16653,
                "loc": {
                  "start": {
                    "line": 430,
                    "column": 4
                  },
                  "end": {
                    "line": 430,
                    "column": 13
                  }
                },
                "name": "getLength"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 16653,
                "end": 16711,
                "loc": {
                  "start": {
                    "line": 430,
                    "column": 13
                  },
                  "end": {
                    "line": 432,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 16656,
                  "end": 16711,
                  "loc": {
                    "start": {
                      "line": 430,
                      "column": 16
                    },
                    "end": {
                      "line": 432,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 16667,
                      "end": 16704,
                      "loc": {
                        "start": {
                          "line": 431,
                          "column": 8
                        },
                        "end": {
                          "line": 431,
                          "column": 45
                        }
                      },
                      "argument": {
                        "type": "BinaryExpression",
                        "start": 16674,
                        "end": 16703,
                        "loc": {
                          "start": {
                            "line": 431,
                            "column": 15
                          },
                          "end": {
                            "line": 431,
                            "column": 44
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 16674,
                          "end": 16685,
                          "loc": {
                            "start": {
                              "line": 431,
                              "column": 15
                            },
                            "end": {
                              "line": 431,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 16674,
                            "end": 16678,
                            "loc": {
                              "start": {
                                "line": 431,
                                "column": 15
                              },
                              "end": {
                                "line": 431,
                                "column": 19
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 16679,
                            "end": 16685,
                            "loc": {
                              "start": {
                                "line": 431,
                                "column": 20
                              },
                              "end": {
                                "line": 431,
                                "column": 26
                              }
                            },
                            "name": "radius"
                          },
                          "computed": false
                        },
                        "operator": "*",
                        "right": {
                          "type": "CallExpression",
                          "start": 16688,
                          "end": 16703,
                          "loc": {
                            "start": {
                              "line": 431,
                              "column": 29
                            },
                            "end": {
                              "line": 431,
                              "column": 44
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 16688,
                            "end": 16701,
                            "loc": {
                              "start": {
                                "line": 431,
                                "column": 29
                              },
                              "end": {
                                "line": 431,
                                "column": 42
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 16688,
                              "end": 16692,
                              "loc": {
                                "start": {
                                  "line": 431,
                                  "column": 29
                                },
                                "end": {
                                  "line": 431,
                                  "column": 33
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 16693,
                              "end": 16701,
                              "loc": {
                                "start": {
                                  "line": 431,
                                  "column": 34
                                },
                                "end": {
                                  "line": 431,
                                  "column": 42
                                }
                              },
                              "name": "getAngle"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 16719,
              "end": 17301,
              "loc": {
                "start": {
                  "line": 434,
                  "column": 4
                },
                "end": {
                  "line": 445,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 16725,
                "end": 16737,
                "loc": {
                  "start": {
                    "line": 434,
                    "column": 10
                  },
                  "end": {
                    "line": 434,
                    "column": 22
                  }
                },
                "name": "moveRelative"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 16737,
                "end": 17301,
                "loc": {
                  "start": {
                    "line": 434,
                    "column": 22
                  },
                  "end": {
                    "line": 445,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 16738,
                    "end": 16747,
                    "loc": {
                      "start": {
                        "line": 434,
                        "column": 23
                      },
                      "end": {
                        "line": 434,
                        "column": 32
                      }
                    },
                    "name": "direction"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 16749,
                  "end": 17301,
                  "loc": {
                    "start": {
                      "line": 434,
                      "column": 34
                    },
                    "end": {
                      "line": 445,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 16760,
                      "end": 16807,
                      "loc": {
                        "start": {
                          "line": 435,
                          "column": 8
                        },
                        "end": {
                          "line": 435,
                          "column": 55
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 16764,
                          "end": 16806,
                          "loc": {
                            "start": {
                              "line": 435,
                              "column": 12
                            },
                            "end": {
                              "line": 435,
                              "column": 54
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 16764,
                            "end": 16767,
                            "loc": {
                              "start": {
                                "line": 435,
                                "column": 12
                              },
                              "end": {
                                "line": 435,
                                "column": 15
                              }
                            },
                            "name": "pts"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 16770,
                            "end": 16806,
                            "loc": {
                              "start": {
                                "line": 435,
                                "column": 18
                              },
                              "end": {
                                "line": 435,
                                "column": 54
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 16770,
                              "end": 16788,
                              "loc": {
                                "start": {
                                  "line": 435,
                                  "column": 18
                                },
                                "end": {
                                  "line": 435,
                                  "column": 36
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 16770,
                                "end": 16781,
                                "loc": {
                                  "start": {
                                    "line": 435,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 435,
                                    "column": 29
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 16770,
                                  "end": 16774,
                                  "loc": {
                                    "start": {
                                      "line": 435,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 435,
                                      "column": 22
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 16775,
                                  "end": 16781,
                                  "loc": {
                                    "start": {
                                      "line": 435,
                                      "column": 23
                                    },
                                    "end": {
                                      "line": 435,
                                      "column": 29
                                    }
                                  },
                                  "name": "points"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 16782,
                                "end": 16788,
                                "loc": {
                                  "start": {
                                    "line": 435,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 435,
                                    "column": 36
                                  }
                                },
                                "name": "concat"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 16789,
                                "end": 16805,
                                "loc": {
                                  "start": {
                                    "line": 435,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 435,
                                    "column": 53
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 16789,
                                  "end": 16793,
                                  "loc": {
                                    "start": {
                                      "line": 435,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 435,
                                      "column": 41
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 16794,
                                  "end": 16805,
                                  "loc": {
                                    "start": {
                                      "line": 435,
                                      "column": 42
                                    },
                                    "end": {
                                      "line": 435,
                                      "column": 53
                                    }
                                  },
                                  "name": "centerPoint"
                                },
                                "computed": false
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "let",
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " set positions directly (to avoid updating partially moved circle)",
                          "start": 16817,
                          "end": 16885,
                          "loc": {
                            "start": {
                              "line": 436,
                              "column": 8
                            },
                            "end": {
                              "line": 436,
                              "column": 76
                            }
                          },
                          "range": [
                            16817,
                            16885
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 16895,
                      "end": 16939,
                      "loc": {
                        "start": {
                          "line": 437,
                          "column": 8
                        },
                        "end": {
                          "line": 437,
                          "column": 52
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 16895,
                        "end": 16938,
                        "loc": {
                          "start": {
                            "line": 437,
                            "column": 8
                          },
                          "end": {
                            "line": 437,
                            "column": 51
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 16895,
                          "end": 16906,
                          "loc": {
                            "start": {
                              "line": 437,
                              "column": 8
                            },
                            "end": {
                              "line": 437,
                              "column": 19
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 16895,
                            "end": 16898,
                            "loc": {
                              "start": {
                                "line": 437,
                                "column": 8
                              },
                              "end": {
                                "line": 437,
                                "column": 11
                              }
                            },
                            "name": "pts",
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 16899,
                            "end": 16906,
                            "loc": {
                              "start": {
                                "line": 437,
                                "column": 12
                              },
                              "end": {
                                "line": 437,
                                "column": 19
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 16907,
                            "end": 16937,
                            "loc": {
                              "start": {
                                "line": 437,
                                "column": 20
                              },
                              "end": {
                                "line": 437,
                                "column": 50
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": true,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 16907,
                                "end": 16908,
                                "loc": {
                                  "start": {
                                    "line": 437,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 437,
                                    "column": 21
                                  }
                                },
                                "name": "p"
                              }
                            ],
                            "body": {
                              "type": "CallExpression",
                              "start": 16912,
                              "end": 16937,
                              "loc": {
                                "start": {
                                  "line": 437,
                                  "column": 25
                                },
                                "end": {
                                  "line": 437,
                                  "column": 50
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 16912,
                                "end": 16926,
                                "loc": {
                                  "start": {
                                    "line": 437,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 437,
                                    "column": 39
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 16912,
                                  "end": 16922,
                                  "loc": {
                                    "start": {
                                      "line": 437,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 437,
                                      "column": 35
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 16912,
                                    "end": 16913,
                                    "loc": {
                                      "start": {
                                        "line": 437,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 437,
                                        "column": 26
                                      }
                                    },
                                    "name": "p"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 16914,
                                    "end": 16922,
                                    "loc": {
                                      "start": {
                                        "line": 437,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 437,
                                        "column": 35
                                      }
                                    },
                                    "name": "position"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 16923,
                                  "end": 16926,
                                  "loc": {
                                    "start": {
                                      "line": 437,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 437,
                                      "column": 39
                                    }
                                  },
                                  "name": "add"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 16927,
                                  "end": 16936,
                                  "loc": {
                                    "start": {
                                      "line": 437,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 437,
                                      "column": 49
                                    }
                                  },
                                  "name": "direction"
                                }
                              ]
                            }
                          }
                        ],
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " set positions directly (to avoid updating partially moved circle)",
                          "start": 16817,
                          "end": 16885,
                          "loc": {
                            "start": {
                              "line": 436,
                              "column": 8
                            },
                            "end": {
                              "line": 436,
                              "column": 76
                            }
                          },
                          "range": [
                            16817,
                            16885
                          ]
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " update geometry after all points are moved",
                          "start": 16949,
                          "end": 16994,
                          "loc": {
                            "start": {
                              "line": 438,
                              "column": 8
                            },
                            "end": {
                              "line": 438,
                              "column": 53
                            }
                          },
                          "range": [
                            16949,
                            16994
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 17004,
                      "end": 17026,
                      "loc": {
                        "start": {
                          "line": 439,
                          "column": 8
                        },
                        "end": {
                          "line": 439,
                          "column": 30
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 17004,
                        "end": 17025,
                        "loc": {
                          "start": {
                            "line": 439,
                            "column": 8
                          },
                          "end": {
                            "line": 439,
                            "column": 29
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 17004,
                          "end": 17023,
                          "loc": {
                            "start": {
                              "line": 439,
                              "column": 8
                            },
                            "end": {
                              "line": 439,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 17004,
                            "end": 17008,
                            "loc": {
                              "start": {
                                "line": 439,
                                "column": 8
                              },
                              "end": {
                                "line": 439,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 17009,
                            "end": 17023,
                            "loc": {
                              "start": {
                                "line": 439,
                                "column": 13
                              },
                              "end": {
                                "line": 439,
                                "column": 27
                              }
                            },
                            "name": "updateGeometry"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "arguments": [],
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " update geometry after all points are moved",
                          "start": 16949,
                          "end": 16994,
                          "loc": {
                            "start": {
                              "line": 438,
                              "column": 8
                            },
                            "end": {
                              "line": 438,
                              "column": 53
                            }
                          },
                          "range": [
                            16949,
                            16994
                          ]
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "this.updateVisualization(); //TODO: why are endpoints not in sync otherwise?",
                          "start": 17036,
                          "end": 17114,
                          "loc": {
                            "start": {
                              "line": 440,
                              "column": 8
                            },
                            "end": {
                              "line": 440,
                              "column": 86
                            }
                          },
                          "range": [
                            17036,
                            17114
                          ]
                        },
                        {
                          "type": "CommentLine",
                          "value": " notify that all the points and the object were moved really",
                          "start": 17124,
                          "end": 17186,
                          "loc": {
                            "start": {
                              "line": 441,
                              "column": 8
                            },
                            "end": {
                              "line": 441,
                              "column": 70
                            }
                          },
                          "range": [
                            17124,
                            17186
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ForOfStatement",
                      "start": 17196,
                      "end": 17253,
                      "loc": {
                        "start": {
                          "line": 442,
                          "column": 8
                        },
                        "end": {
                          "line": 443,
                          "column": 37
                        }
                      },
                      "left": {
                        "type": "VariableDeclaration",
                        "start": 17201,
                        "end": 17206,
                        "loc": {
                          "start": {
                            "line": 442,
                            "column": 13
                          },
                          "end": {
                            "line": 442,
                            "column": 18
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 17205,
                            "end": 17206,
                            "loc": {
                              "start": {
                                "line": 442,
                                "column": 17
                              },
                              "end": {
                                "line": 442,
                                "column": 18
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 17205,
                              "end": 17206,
                              "loc": {
                                "start": {
                                  "line": 442,
                                  "column": 17
                                },
                                "end": {
                                  "line": 442,
                                  "column": 18
                                }
                              },
                              "name": "p",
                              "leadingComments": null
                            },
                            "init": null,
                            "leadingComments": null
                          }
                        ],
                        "kind": "let",
                        "leadingComments": null
                      },
                      "right": {
                        "type": "Identifier",
                        "start": 17210,
                        "end": 17213,
                        "loc": {
                          "start": {
                            "line": 442,
                            "column": 22
                          },
                          "end": {
                            "line": 442,
                            "column": 25
                          }
                        },
                        "name": "pts"
                      },
                      "body": {
                        "type": "ExpressionStatement",
                        "start": 17228,
                        "end": 17253,
                        "loc": {
                          "start": {
                            "line": 443,
                            "column": 12
                          },
                          "end": {
                            "line": 443,
                            "column": 37
                          }
                        },
                        "expression": {
                          "type": "AwaitExpression",
                          "start": 17228,
                          "end": 17252,
                          "loc": {
                            "start": {
                              "line": 443,
                              "column": 12
                            },
                            "end": {
                              "line": 443,
                              "column": 36
                            }
                          },
                          "all": false,
                          "argument": {
                            "type": "CallExpression",
                            "start": 17234,
                            "end": 17252,
                            "loc": {
                              "start": {
                                "line": 443,
                                "column": 18
                              },
                              "end": {
                                "line": 443,
                                "column": 36
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 17234,
                              "end": 17240,
                              "loc": {
                                "start": {
                                  "line": 443,
                                  "column": 18
                                },
                                "end": {
                                  "line": 443,
                                  "column": 24
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 17234,
                                "end": 17235,
                                "loc": {
                                  "start": {
                                    "line": 443,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 443,
                                    "column": 19
                                  }
                                },
                                "name": "p"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 17236,
                                "end": 17240,
                                "loc": {
                                  "start": {
                                    "line": 443,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 443,
                                    "column": 24
                                  }
                                },
                                "name": "emit"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Literal",
                                "start": 17241,
                                "end": 17248,
                                "loc": {
                                  "start": {
                                    "line": 443,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 443,
                                    "column": 32
                                  }
                                },
                                "value": "moved",
                                "rawValue": "moved",
                                "raw": "'moved'"
                              },
                              {
                                "type": "Identifier",
                                "start": 17250,
                                "end": 17251,
                                "loc": {
                                  "start": {
                                    "line": 443,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 443,
                                    "column": 35
                                  }
                                },
                                "name": "p"
                              }
                            ]
                          }
                        }
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "this.updateVisualization(); //TODO: why are endpoints not in sync otherwise?",
                          "start": 17036,
                          "end": 17114,
                          "loc": {
                            "start": {
                              "line": 440,
                              "column": 8
                            },
                            "end": {
                              "line": 440,
                              "column": 86
                            }
                          },
                          "range": [
                            17036,
                            17114
                          ]
                        },
                        {
                          "type": "CommentLine",
                          "value": " notify that all the points and the object were moved really",
                          "start": 17124,
                          "end": 17186,
                          "loc": {
                            "start": {
                              "line": 441,
                              "column": 8
                            },
                            "end": {
                              "line": 441,
                              "column": 70
                            }
                          },
                          "range": [
                            17124,
                            17186
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 17263,
                      "end": 17294,
                      "loc": {
                        "start": {
                          "line": 444,
                          "column": 8
                        },
                        "end": {
                          "line": 444,
                          "column": 39
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 17263,
                        "end": 17293,
                        "loc": {
                          "start": {
                            "line": 444,
                            "column": 8
                          },
                          "end": {
                            "line": 444,
                            "column": 38
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 17269,
                          "end": 17293,
                          "loc": {
                            "start": {
                              "line": 444,
                              "column": 14
                            },
                            "end": {
                              "line": 444,
                              "column": 38
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 17269,
                            "end": 17278,
                            "loc": {
                              "start": {
                                "line": 444,
                                "column": 14
                              },
                              "end": {
                                "line": 444,
                                "column": 23
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 17269,
                              "end": 17273,
                              "loc": {
                                "start": {
                                  "line": 444,
                                  "column": 14
                                },
                                "end": {
                                  "line": 444,
                                  "column": 18
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 17274,
                              "end": 17278,
                              "loc": {
                                "start": {
                                  "line": 444,
                                  "column": 19
                                },
                                "end": {
                                  "line": 444,
                                  "column": 23
                                }
                              },
                              "name": "emit"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Literal",
                              "start": 17279,
                              "end": 17286,
                              "loc": {
                                "start": {
                                  "line": 444,
                                  "column": 24
                                },
                                "end": {
                                  "line": 444,
                                  "column": 31
                                }
                              },
                              "value": "moved",
                              "rawValue": "moved",
                              "raw": "'moved'"
                            },
                            {
                              "type": "ThisExpression",
                              "start": 17288,
                              "end": 17292,
                              "loc": {
                                "start": {
                                  "line": 444,
                                  "column": 33
                                },
                                "end": {
                                  "line": 444,
                                  "column": 37
                                }
                              }
                            }
                          ]
                        }
                      }
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": "simultaneously modify several arc's parameters (without intermediate recalculations)",
                  "start": 17309,
                  "end": 17395,
                  "loc": {
                    "start": {
                      "line": 447,
                      "column": 4
                    },
                    "end": {
                      "line": 447,
                      "column": 90
                    }
                  },
                  "range": [
                    17309,
                    17395
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": "one or more parameters can be undefined/null (meaning: do not change)",
                  "start": 17401,
                  "end": 17472,
                  "loc": {
                    "start": {
                      "line": 448,
                      "column": 4
                    },
                    "end": {
                      "line": 448,
                      "column": 75
                    }
                  },
                  "range": [
                    17401,
                    17472
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 17478,
              "end": 17831,
              "loc": {
                "start": {
                  "line": 449,
                  "column": 4
                },
                "end": {
                  "line": 459,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 17478,
                "end": 17484,
                "loc": {
                  "start": {
                    "line": 449,
                    "column": 4
                  },
                  "end": {
                    "line": 449,
                    "column": 10
                  }
                },
                "name": "modify",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 17484,
                "end": 17831,
                "loc": {
                  "start": {
                    "line": 449,
                    "column": 10
                  },
                  "end": {
                    "line": 459,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 17485,
                    "end": 17490,
                    "loc": {
                      "start": {
                        "line": 449,
                        "column": 11
                      },
                      "end": {
                        "line": 449,
                        "column": 16
                      }
                    },
                    "name": "start"
                  },
                  {
                    "type": "Identifier",
                    "start": 17492,
                    "end": 17495,
                    "loc": {
                      "start": {
                        "line": 449,
                        "column": 18
                      },
                      "end": {
                        "line": 449,
                        "column": 21
                      }
                    },
                    "name": "end"
                  },
                  {
                    "type": "Identifier",
                    "start": 17497,
                    "end": 17503,
                    "loc": {
                      "start": {
                        "line": 449,
                        "column": 23
                      },
                      "end": {
                        "line": 449,
                        "column": 29
                      }
                    },
                    "name": "center"
                  },
                  {
                    "type": "Identifier",
                    "start": 17505,
                    "end": 17514,
                    "loc": {
                      "start": {
                        "line": 449,
                        "column": 31
                      },
                      "end": {
                        "line": 449,
                        "column": 40
                      }
                    },
                    "name": "clockwise"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 17516,
                  "end": 17831,
                  "loc": {
                    "start": {
                      "line": 449,
                      "column": 42
                    },
                    "end": {
                      "line": 459,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 17527,
                      "end": 17587,
                      "loc": {
                        "start": {
                          "line": 450,
                          "column": 8
                        },
                        "end": {
                          "line": 451,
                          "column": 48
                        }
                      },
                      "test": {
                        "type": "Identifier",
                        "start": 17531,
                        "end": 17536,
                        "loc": {
                          "start": {
                            "line": 450,
                            "column": 12
                          },
                          "end": {
                            "line": 450,
                            "column": 17
                          }
                        },
                        "name": "start"
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 17551,
                        "end": 17587,
                        "loc": {
                          "start": {
                            "line": 451,
                            "column": 12
                          },
                          "end": {
                            "line": 451,
                            "column": 48
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 17551,
                          "end": 17586,
                          "loc": {
                            "start": {
                              "line": 451,
                              "column": 12
                            },
                            "end": {
                              "line": 451,
                              "column": 47
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 17551,
                            "end": 17579,
                            "loc": {
                              "start": {
                                "line": 451,
                                "column": 12
                              },
                              "end": {
                                "line": 451,
                                "column": 40
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 17551,
                              "end": 17574,
                              "loc": {
                                "start": {
                                  "line": 451,
                                  "column": 12
                                },
                                "end": {
                                  "line": 451,
                                  "column": 35
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 17551,
                                "end": 17565,
                                "loc": {
                                  "start": {
                                    "line": 451,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 451,
                                    "column": 26
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 17551,
                                  "end": 17562,
                                  "loc": {
                                    "start": {
                                      "line": 451,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 451,
                                      "column": 23
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 17551,
                                    "end": 17555,
                                    "loc": {
                                      "start": {
                                        "line": 451,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 451,
                                        "column": 16
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 17556,
                                    "end": 17562,
                                    "loc": {
                                      "start": {
                                        "line": 451,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 451,
                                        "column": 23
                                      }
                                    },
                                    "name": "points"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Literal",
                                  "start": 17563,
                                  "end": 17564,
                                  "loc": {
                                    "start": {
                                      "line": 451,
                                      "column": 24
                                    },
                                    "end": {
                                      "line": 451,
                                      "column": 25
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                "computed": true
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 17566,
                                "end": 17574,
                                "loc": {
                                  "start": {
                                    "line": 451,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 451,
                                    "column": 35
                                  }
                                },
                                "name": "position"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 17575,
                              "end": 17579,
                              "loc": {
                                "start": {
                                  "line": 451,
                                  "column": 36
                                },
                                "end": {
                                  "line": 451,
                                  "column": 40
                                }
                              },
                              "name": "copy"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 17580,
                              "end": 17585,
                              "loc": {
                                "start": {
                                  "line": 451,
                                  "column": 41
                                },
                                "end": {
                                  "line": 451,
                                  "column": 46
                                }
                              },
                              "name": "start"
                            }
                          ]
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 17597,
                      "end": 17653,
                      "loc": {
                        "start": {
                          "line": 452,
                          "column": 8
                        },
                        "end": {
                          "line": 453,
                          "column": 46
                        }
                      },
                      "test": {
                        "type": "Identifier",
                        "start": 17601,
                        "end": 17604,
                        "loc": {
                          "start": {
                            "line": 452,
                            "column": 12
                          },
                          "end": {
                            "line": 452,
                            "column": 15
                          }
                        },
                        "name": "end"
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 17619,
                        "end": 17653,
                        "loc": {
                          "start": {
                            "line": 453,
                            "column": 12
                          },
                          "end": {
                            "line": 453,
                            "column": 46
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 17619,
                          "end": 17652,
                          "loc": {
                            "start": {
                              "line": 453,
                              "column": 12
                            },
                            "end": {
                              "line": 453,
                              "column": 45
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 17619,
                            "end": 17647,
                            "loc": {
                              "start": {
                                "line": 453,
                                "column": 12
                              },
                              "end": {
                                "line": 453,
                                "column": 40
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 17619,
                              "end": 17642,
                              "loc": {
                                "start": {
                                  "line": 453,
                                  "column": 12
                                },
                                "end": {
                                  "line": 453,
                                  "column": 35
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 17619,
                                "end": 17633,
                                "loc": {
                                  "start": {
                                    "line": 453,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 453,
                                    "column": 26
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 17619,
                                  "end": 17630,
                                  "loc": {
                                    "start": {
                                      "line": 453,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 453,
                                      "column": 23
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 17619,
                                    "end": 17623,
                                    "loc": {
                                      "start": {
                                        "line": 453,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 453,
                                        "column": 16
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 17624,
                                    "end": 17630,
                                    "loc": {
                                      "start": {
                                        "line": 453,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 453,
                                        "column": 23
                                      }
                                    },
                                    "name": "points"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Literal",
                                  "start": 17631,
                                  "end": 17632,
                                  "loc": {
                                    "start": {
                                      "line": 453,
                                      "column": 24
                                    },
                                    "end": {
                                      "line": 453,
                                      "column": 25
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                },
                                "computed": true
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 17634,
                                "end": 17642,
                                "loc": {
                                  "start": {
                                    "line": 453,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 453,
                                    "column": 35
                                  }
                                },
                                "name": "position"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 17643,
                              "end": 17647,
                              "loc": {
                                "start": {
                                  "line": 453,
                                  "column": 36
                                },
                                "end": {
                                  "line": 453,
                                  "column": 40
                                }
                              },
                              "name": "copy"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 17648,
                              "end": 17651,
                              "loc": {
                                "start": {
                                  "line": 453,
                                  "column": 41
                                },
                                "end": {
                                  "line": 453,
                                  "column": 44
                                }
                              },
                              "name": "end"
                            }
                          ]
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 17663,
                      "end": 17727,
                      "loc": {
                        "start": {
                          "line": 454,
                          "column": 8
                        },
                        "end": {
                          "line": 455,
                          "column": 51
                        }
                      },
                      "test": {
                        "type": "Identifier",
                        "start": 17667,
                        "end": 17673,
                        "loc": {
                          "start": {
                            "line": 454,
                            "column": 12
                          },
                          "end": {
                            "line": 454,
                            "column": 18
                          }
                        },
                        "name": "center"
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 17688,
                        "end": 17727,
                        "loc": {
                          "start": {
                            "line": 455,
                            "column": 12
                          },
                          "end": {
                            "line": 455,
                            "column": 51
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 17688,
                          "end": 17726,
                          "loc": {
                            "start": {
                              "line": 455,
                              "column": 12
                            },
                            "end": {
                              "line": 455,
                              "column": 50
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 17688,
                            "end": 17718,
                            "loc": {
                              "start": {
                                "line": 455,
                                "column": 12
                              },
                              "end": {
                                "line": 455,
                                "column": 42
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 17688,
                              "end": 17713,
                              "loc": {
                                "start": {
                                  "line": 455,
                                  "column": 12
                                },
                                "end": {
                                  "line": 455,
                                  "column": 37
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 17688,
                                "end": 17704,
                                "loc": {
                                  "start": {
                                    "line": 455,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 455,
                                    "column": 28
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 17688,
                                  "end": 17692,
                                  "loc": {
                                    "start": {
                                      "line": 455,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 455,
                                      "column": 16
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 17693,
                                  "end": 17704,
                                  "loc": {
                                    "start": {
                                      "line": 455,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 455,
                                      "column": 28
                                    }
                                  },
                                  "name": "centerPoint"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 17705,
                                "end": 17713,
                                "loc": {
                                  "start": {
                                    "line": 455,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 455,
                                    "column": 37
                                  }
                                },
                                "name": "position"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 17714,
                              "end": 17718,
                              "loc": {
                                "start": {
                                  "line": 455,
                                  "column": 38
                                },
                                "end": {
                                  "line": 455,
                                  "column": 42
                                }
                              },
                              "name": "copy"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 17719,
                              "end": 17725,
                              "loc": {
                                "start": {
                                  "line": 455,
                                  "column": 43
                                },
                                "end": {
                                  "line": 455,
                                  "column": 49
                                }
                              },
                              "name": "center"
                            }
                          ]
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 17737,
                      "end": 17792,
                      "loc": {
                        "start": {
                          "line": 456,
                          "column": 8
                        },
                        "end": {
                          "line": 457,
                          "column": 39
                        }
                      },
                      "test": {
                        "type": "Identifier",
                        "start": 17741,
                        "end": 17750,
                        "loc": {
                          "start": {
                            "line": 456,
                            "column": 12
                          },
                          "end": {
                            "line": 456,
                            "column": 21
                          }
                        },
                        "name": "clockwise"
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 17765,
                        "end": 17792,
                        "loc": {
                          "start": {
                            "line": 457,
                            "column": 12
                          },
                          "end": {
                            "line": 457,
                            "column": 39
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 17765,
                          "end": 17791,
                          "loc": {
                            "start": {
                              "line": 457,
                              "column": 12
                            },
                            "end": {
                              "line": 457,
                              "column": 38
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "MemberExpression",
                            "start": 17765,
                            "end": 17779,
                            "loc": {
                              "start": {
                                "line": 457,
                                "column": 12
                              },
                              "end": {
                                "line": 457,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 17765,
                              "end": 17769,
                              "loc": {
                                "start": {
                                  "line": 457,
                                  "column": 12
                                },
                                "end": {
                                  "line": 457,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 17770,
                              "end": 17779,
                              "loc": {
                                "start": {
                                  "line": 457,
                                  "column": 17
                                },
                                "end": {
                                  "line": 457,
                                  "column": 26
                                }
                              },
                              "name": "clockwise"
                            },
                            "computed": false
                          },
                          "right": {
                            "type": "Identifier",
                            "start": 17782,
                            "end": 17791,
                            "loc": {
                              "start": {
                                "line": 457,
                                "column": 29
                              },
                              "end": {
                                "line": 457,
                                "column": 38
                              }
                            },
                            "name": "clockwise"
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 17802,
                      "end": 17824,
                      "loc": {
                        "start": {
                          "line": 458,
                          "column": 8
                        },
                        "end": {
                          "line": 458,
                          "column": 30
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 17802,
                        "end": 17823,
                        "loc": {
                          "start": {
                            "line": 458,
                            "column": 8
                          },
                          "end": {
                            "line": 458,
                            "column": 29
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 17802,
                          "end": 17821,
                          "loc": {
                            "start": {
                              "line": 458,
                              "column": 8
                            },
                            "end": {
                              "line": 458,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 17802,
                            "end": 17806,
                            "loc": {
                              "start": {
                                "line": 458,
                                "column": 8
                              },
                              "end": {
                                "line": 458,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 17807,
                            "end": 17821,
                            "loc": {
                              "start": {
                                "line": 458,
                                "column": 13
                              },
                              "end": {
                                "line": 458,
                                "column": 27
                              }
                            },
                            "name": "updateGeometry"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    }
                  ]
                }
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": "simultaneously modify several arc's parameters (without intermediate recalculations)",
                  "start": 17309,
                  "end": 17395,
                  "loc": {
                    "start": {
                      "line": 447,
                      "column": 4
                    },
                    "end": {
                      "line": 447,
                      "column": 90
                    }
                  },
                  "range": [
                    17309,
                    17395
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": "one or more parameters can be undefined/null (meaning: do not change)",
                  "start": 17401,
                  "end": 17472,
                  "loc": {
                    "start": {
                      "line": 448,
                      "column": 4
                    },
                    "end": {
                      "line": 448,
                      "column": 75
                    }
                  },
                  "range": [
                    17401,
                    17472
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 17839,
              "end": 18083,
              "loc": {
                "start": {
                  "line": 461,
                  "column": 4
                },
                "end": {
                  "line": 466,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 17845,
                "end": 17852,
                "loc": {
                  "start": {
                    "line": 461,
                    "column": 10
                  },
                  "end": {
                    "line": 461,
                    "column": 17
                  }
                },
                "name": "endDrag"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 17852,
                "end": 18083,
                "loc": {
                  "start": {
                    "line": 461,
                    "column": 17
                  },
                  "end": {
                    "line": 466,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 17853,
                    "end": 17859,
                    "loc": {
                      "start": {
                        "line": 461,
                        "column": 18
                      },
                      "end": {
                        "line": 461,
                        "column": 24
                      }
                    },
                    "name": "sketch"
                  },
                  {
                    "type": "Identifier",
                    "start": 17861,
                    "end": 17867,
                    "loc": {
                      "start": {
                        "line": 461,
                        "column": 26
                      },
                      "end": {
                        "line": 461,
                        "column": 32
                      }
                    },
                    "name": "socket"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 17869,
                  "end": 18083,
                  "loc": {
                    "start": {
                      "line": 461,
                      "column": 34
                    },
                    "end": {
                      "line": 466,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 17880,
                      "end": 18023,
                      "loc": {
                        "start": {
                          "line": 462,
                          "column": 8
                        },
                        "end": {
                          "line": 464,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "CallExpression",
                        "start": 17884,
                        "end": 17907,
                        "loc": {
                          "start": {
                            "line": 462,
                            "column": 12
                          },
                          "end": {
                            "line": 462,
                            "column": 35
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 17884,
                          "end": 17901,
                          "loc": {
                            "start": {
                              "line": 462,
                              "column": 12
                            },
                            "end": {
                              "line": 462,
                              "column": 29
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 17884,
                            "end": 17890,
                            "loc": {
                              "start": {
                                "line": 462,
                                "column": 12
                              },
                              "end": {
                                "line": 462,
                                "column": 18
                              }
                            },
                            "name": "sketch"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 17891,
                            "end": 17901,
                            "loc": {
                              "start": {
                                "line": 462,
                                "column": 19
                              },
                              "end": {
                                "line": 462,
                                "column": 29
                              }
                            },
                            "name": "isOnSketch"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ThisExpression",
                            "start": 17902,
                            "end": 17906,
                            "loc": {
                              "start": {
                                "line": 462,
                                "column": 30
                              },
                              "end": {
                                "line": 462,
                                "column": 34
                              }
                            }
                          }
                        ]
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 17909,
                        "end": 18023,
                        "loc": {
                          "start": {
                            "line": 462,
                            "column": 37
                          },
                          "end": {
                            "line": 464,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 17924,
                            "end": 18012,
                            "loc": {
                              "start": {
                                "line": 463,
                                "column": 12
                              },
                              "end": {
                                "line": 463,
                                "column": 100
                              }
                            },
                            "expression": {
                              "type": "AwaitExpression",
                              "start": 17924,
                              "end": 18011,
                              "loc": {
                                "start": {
                                  "line": 463,
                                  "column": 12
                                },
                                "end": {
                                  "line": 463,
                                  "column": 99
                                }
                              },
                              "all": false,
                              "argument": {
                                "type": "CallExpression",
                                "start": 17930,
                                "end": 18011,
                                "loc": {
                                  "start": {
                                    "line": 463,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 463,
                                    "column": 99
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 17930,
                                  "end": 18003,
                                  "loc": {
                                    "start": {
                                      "line": 463,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 463,
                                      "column": 91
                                    }
                                  },
                                  "object": {
                                    "type": "CallExpression",
                                    "start": 17930,
                                    "end": 17995,
                                    "loc": {
                                      "start": {
                                        "line": 463,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 463,
                                        "column": 83
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 17930,
                                      "end": 17968,
                                      "loc": {
                                        "start": {
                                          "line": 463,
                                          "column": 18
                                        },
                                        "end": {
                                          "line": 463,
                                          "column": 56
                                        }
                                      },
                                      "object": {
                                        "type": "CallExpression",
                                        "start": 17930,
                                        "end": 17964,
                                        "loc": {
                                          "start": {
                                            "line": 463,
                                            "column": 18
                                          },
                                          "end": {
                                            "line": 463,
                                            "column": 52
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 17930,
                                          "end": 17956,
                                          "loc": {
                                            "start": {
                                              "line": 463,
                                              "column": 18
                                            },
                                            "end": {
                                              "line": 463,
                                              "column": 44
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 17930,
                                            "end": 17934,
                                            "loc": {
                                              "start": {
                                                "line": 463,
                                                "column": 18
                                              },
                                              "end": {
                                                "line": 463,
                                                "column": 22
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 17935,
                                            "end": 17956,
                                            "loc": {
                                              "start": {
                                                "line": 463,
                                                "column": 23
                                              },
                                              "end": {
                                                "line": 463,
                                                "column": 44
                                              }
                                            },
                                            "name": "prepareUpdateToServer"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 17957,
                                            "end": 17963,
                                            "loc": {
                                              "start": {
                                                "line": 463,
                                                "column": 45
                                              },
                                              "end": {
                                                "line": 463,
                                                "column": 51
                                              }
                                            },
                                            "name": "sketch"
                                          }
                                        ]
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 17965,
                                        "end": 17968,
                                        "loc": {
                                          "start": {
                                            "line": 463,
                                            "column": 53
                                          },
                                          "end": {
                                            "line": 463,
                                            "column": 56
                                          }
                                        },
                                        "name": "and"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "CallExpression",
                                        "start": 17969,
                                        "end": 17994,
                                        "loc": {
                                          "start": {
                                            "line": 463,
                                            "column": 57
                                          },
                                          "end": {
                                            "line": 463,
                                            "column": 82
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 17969,
                                          "end": 17992,
                                          "loc": {
                                            "start": {
                                              "line": 463,
                                              "column": 57
                                            },
                                            "end": {
                                              "line": 463,
                                              "column": 80
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 17969,
                                            "end": 17975,
                                            "loc": {
                                              "start": {
                                                "line": 463,
                                                "column": 57
                                              },
                                              "end": {
                                                "line": 463,
                                                "column": 63
                                              }
                                            },
                                            "name": "sketch"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 17976,
                                            "end": 17992,
                                            "loc": {
                                              "start": {
                                                "line": 463,
                                                "column": 64
                                              },
                                              "end": {
                                                "line": 463,
                                                "column": 80
                                              }
                                            },
                                            "name": "updateFromServer"
                                          },
                                          "computed": false
                                        },
                                        "arguments": []
                                      }
                                    ]
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 17996,
                                    "end": 18003,
                                    "loc": {
                                      "start": {
                                        "line": 463,
                                        "column": 84
                                      },
                                      "end": {
                                        "line": 463,
                                        "column": 91
                                      }
                                    },
                                    "name": "execute"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 18004,
                                    "end": 18010,
                                    "loc": {
                                      "start": {
                                        "line": 463,
                                        "column": 92
                                      },
                                      "end": {
                                        "line": 463,
                                        "column": 98
                                      }
                                    },
                                    "name": "socket"
                                  }
                                ]
                              }
                            }
                          }
                        ]
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 18033,
                      "end": 18076,
                      "loc": {
                        "start": {
                          "line": 465,
                          "column": 8
                        },
                        "end": {
                          "line": 465,
                          "column": 51
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 18033,
                        "end": 18075,
                        "loc": {
                          "start": {
                            "line": 465,
                            "column": 8
                          },
                          "end": {
                            "line": 465,
                            "column": 50
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 18039,
                          "end": 18075,
                          "loc": {
                            "start": {
                              "line": 465,
                              "column": 14
                            },
                            "end": {
                              "line": 465,
                              "column": 50
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 18039,
                            "end": 18048,
                            "loc": {
                              "start": {
                                "line": 465,
                                "column": 14
                              },
                              "end": {
                                "line": 465,
                                "column": 23
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 18039,
                              "end": 18043,
                              "loc": {
                                "start": {
                                  "line": 465,
                                  "column": 14
                                },
                                "end": {
                                  "line": 465,
                                  "column": 18
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 18044,
                              "end": 18048,
                              "loc": {
                                "start": {
                                  "line": 465,
                                  "column": 19
                                },
                                "end": {
                                  "line": 465,
                                  "column": 23
                                }
                              },
                              "name": "emit"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Literal",
                              "start": 18049,
                              "end": 18058,
                              "loc": {
                                "start": {
                                  "line": 465,
                                  "column": 24
                                },
                                "end": {
                                  "line": 465,
                                  "column": 33
                                }
                              },
                              "value": "dragend",
                              "rawValue": "dragend",
                              "raw": "'dragend'"
                            },
                            {
                              "type": "Identifier",
                              "start": 18060,
                              "end": 18066,
                              "loc": {
                                "start": {
                                  "line": 465,
                                  "column": 35
                                },
                                "end": {
                                  "line": 465,
                                  "column": 41
                                }
                              },
                              "name": "sketch"
                            },
                            {
                              "type": "Identifier",
                              "start": 18068,
                              "end": 18074,
                              "loc": {
                                "start": {
                                  "line": 465,
                                  "column": 43
                                },
                                "end": {
                                  "line": 465,
                                  "column": 49
                                }
                              },
                              "name": "socket"
                            }
                          ]
                        }
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 18091,
              "end": 18291,
              "loc": {
                "start": {
                  "line": 468,
                  "column": 4
                },
                "end": {
                  "line": 472,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 18091,
                "end": 18101,
                "loc": {
                  "start": {
                    "line": 468,
                    "column": 4
                  },
                  "end": {
                    "line": 468,
                    "column": 14
                  }
                },
                "name": "setVisible"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 18101,
                "end": 18291,
                "loc": {
                  "start": {
                    "line": 468,
                    "column": 14
                  },
                  "end": {
                    "line": 472,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 18102,
                    "end": 18112,
                    "loc": {
                      "start": {
                        "line": 468,
                        "column": 15
                      },
                      "end": {
                        "line": 468,
                        "column": 25
                      }
                    },
                    "name": "visibility"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 18114,
                  "end": 18291,
                  "loc": {
                    "start": {
                      "line": 468,
                      "column": 27
                    },
                    "end": {
                      "line": 472,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 18125,
                      "end": 18165,
                      "loc": {
                        "start": {
                          "line": 469,
                          "column": 8
                        },
                        "end": {
                          "line": 469,
                          "column": 48
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 18125,
                        "end": 18164,
                        "loc": {
                          "start": {
                            "line": 469,
                            "column": 8
                          },
                          "end": {
                            "line": 469,
                            "column": 47
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 18125,
                          "end": 18151,
                          "loc": {
                            "start": {
                              "line": 469,
                              "column": 8
                            },
                            "end": {
                              "line": 469,
                              "column": 34
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 18125,
                            "end": 18143,
                            "loc": {
                              "start": {
                                "line": 469,
                                "column": 8
                              },
                              "end": {
                                "line": 469,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 18125,
                              "end": 18134,
                              "loc": {
                                "start": {
                                  "line": 469,
                                  "column": 8
                                },
                                "end": {
                                  "line": 469,
                                  "column": 17
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 18125,
                                "end": 18129,
                                "loc": {
                                  "start": {
                                    "line": 469,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 469,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 18130,
                                "end": 18134,
                                "loc": {
                                  "start": {
                                    "line": 469,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 469,
                                    "column": 17
                                  }
                                },
                                "name": "mesh"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 18135,
                              "end": 18143,
                              "loc": {
                                "start": {
                                  "line": 469,
                                  "column": 18
                                },
                                "end": {
                                  "line": 469,
                                  "column": 26
                                }
                              },
                              "name": "material"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 18144,
                            "end": 18151,
                            "loc": {
                              "start": {
                                "line": 469,
                                "column": 27
                              },
                              "end": {
                                "line": 469,
                                "column": 34
                              }
                            },
                            "name": "visible"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Identifier",
                          "start": 18154,
                          "end": 18164,
                          "loc": {
                            "start": {
                              "line": 469,
                              "column": 37
                            },
                            "end": {
                              "line": 469,
                              "column": 47
                            }
                          },
                          "name": "visibility"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 18175,
                      "end": 18234,
                      "loc": {
                        "start": {
                          "line": 470,
                          "column": 8
                        },
                        "end": {
                          "line": 470,
                          "column": 67
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 18175,
                        "end": 18233,
                        "loc": {
                          "start": {
                            "line": 470,
                            "column": 8
                          },
                          "end": {
                            "line": 470,
                            "column": 66
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 18175,
                          "end": 18194,
                          "loc": {
                            "start": {
                              "line": 470,
                              "column": 8
                            },
                            "end": {
                              "line": 470,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 18175,
                            "end": 18186,
                            "loc": {
                              "start": {
                                "line": 470,
                                "column": 8
                              },
                              "end": {
                                "line": 470,
                                "column": 19
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 18175,
                              "end": 18179,
                              "loc": {
                                "start": {
                                  "line": 470,
                                  "column": 8
                                },
                                "end": {
                                  "line": 470,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 18180,
                              "end": 18186,
                              "loc": {
                                "start": {
                                  "line": 470,
                                  "column": 13
                                },
                                "end": {
                                  "line": 470,
                                  "column": 19
                                }
                              },
                              "name": "points"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 18187,
                            "end": 18194,
                            "loc": {
                              "start": {
                                "line": 470,
                                "column": 20
                              },
                              "end": {
                                "line": 470,
                                "column": 27
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 18195,
                            "end": 18232,
                            "loc": {
                              "start": {
                                "line": 470,
                                "column": 28
                              },
                              "end": {
                                "line": 470,
                                "column": 65
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": true,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 18195,
                                "end": 18200,
                                "loc": {
                                  "start": {
                                    "line": 470,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 470,
                                    "column": 33
                                  }
                                },
                                "name": "point"
                              }
                            ],
                            "body": {
                              "type": "CallExpression",
                              "start": 18204,
                              "end": 18232,
                              "loc": {
                                "start": {
                                  "line": 470,
                                  "column": 37
                                },
                                "end": {
                                  "line": 470,
                                  "column": 65
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 18204,
                                "end": 18220,
                                "loc": {
                                  "start": {
                                    "line": 470,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 470,
                                    "column": 53
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 18204,
                                  "end": 18209,
                                  "loc": {
                                    "start": {
                                      "line": 470,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 470,
                                      "column": 42
                                    }
                                  },
                                  "name": "point"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 18210,
                                  "end": 18220,
                                  "loc": {
                                    "start": {
                                      "line": 470,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 470,
                                      "column": 53
                                    }
                                  },
                                  "name": "setVisible"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 18221,
                                  "end": 18231,
                                  "loc": {
                                    "start": {
                                      "line": 470,
                                      "column": 54
                                    },
                                    "end": {
                                      "line": 470,
                                      "column": 64
                                    }
                                  },
                                  "name": "visibility"
                                }
                              ]
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 18244,
                      "end": 18284,
                      "loc": {
                        "start": {
                          "line": 471,
                          "column": 8
                        },
                        "end": {
                          "line": 471,
                          "column": 48
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 18244,
                        "end": 18283,
                        "loc": {
                          "start": {
                            "line": 471,
                            "column": 8
                          },
                          "end": {
                            "line": 471,
                            "column": 47
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 18244,
                          "end": 18271,
                          "loc": {
                            "start": {
                              "line": 471,
                              "column": 8
                            },
                            "end": {
                              "line": 471,
                              "column": 35
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 18244,
                            "end": 18260,
                            "loc": {
                              "start": {
                                "line": 471,
                                "column": 8
                              },
                              "end": {
                                "line": 471,
                                "column": 24
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 18244,
                              "end": 18248,
                              "loc": {
                                "start": {
                                  "line": 471,
                                  "column": 8
                                },
                                "end": {
                                  "line": 471,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 18249,
                              "end": 18260,
                              "loc": {
                                "start": {
                                  "line": 471,
                                  "column": 13
                                },
                                "end": {
                                  "line": 471,
                                  "column": 24
                                }
                              },
                              "name": "centerPoint"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 18261,
                            "end": 18271,
                            "loc": {
                              "start": {
                                "line": 471,
                                "column": 25
                              },
                              "end": {
                                "line": 471,
                                "column": 35
                              }
                            },
                            "name": "setVisible"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 18272,
                            "end": 18282,
                            "loc": {
                              "start": {
                                "line": 471,
                                "column": 36
                              },
                              "end": {
                                "line": 471,
                                "column": 46
                              }
                            },
                            "name": "visibility"
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 18299,
              "end": 20202,
              "loc": {
                "start": {
                  "line": 474,
                  "column": 4
                },
                "end": {
                  "line": 508,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 18299,
                "end": 18313,
                "loc": {
                  "start": {
                    "line": 474,
                    "column": 4
                  },
                  "end": {
                    "line": 474,
                    "column": 18
                  }
                },
                "name": "updateGeometry"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 18313,
                "end": 20202,
                "loc": {
                  "start": {
                    "line": 474,
                    "column": 18
                  },
                  "end": {
                    "line": 508,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 18314,
                    "end": 18324,
                    "loc": {
                      "start": {
                        "line": 474,
                        "column": 19
                      },
                      "end": {
                        "line": 474,
                        "column": 29
                      }
                    },
                    "name": "movedPoint"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 18326,
                  "end": 20202,
                  "loc": {
                    "start": {
                      "line": 474,
                      "column": 31
                    },
                    "end": {
                      "line": 508,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 18337,
                      "end": 18886,
                      "loc": {
                        "start": {
                          "line": 475,
                          "column": 8
                        },
                        "end": {
                          "line": 482,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 18341,
                        "end": 18372,
                        "loc": {
                          "start": {
                            "line": 475,
                            "column": 12
                          },
                          "end": {
                            "line": 475,
                            "column": 43
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 18341,
                          "end": 18351,
                          "loc": {
                            "start": {
                              "line": 475,
                              "column": 12
                            },
                            "end": {
                              "line": 475,
                              "column": 22
                            }
                          },
                          "name": "movedPoint"
                        },
                        "operator": "===",
                        "right": {
                          "type": "MemberExpression",
                          "start": 18356,
                          "end": 18372,
                          "loc": {
                            "start": {
                              "line": 475,
                              "column": 27
                            },
                            "end": {
                              "line": 475,
                              "column": 43
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 18356,
                            "end": 18360,
                            "loc": {
                              "start": {
                                "line": 475,
                                "column": 27
                              },
                              "end": {
                                "line": 475,
                                "column": 31
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 18361,
                            "end": 18372,
                            "loc": {
                              "start": {
                                "line": 475,
                                "column": 32
                              },
                              "end": {
                                "line": 475,
                                "column": 43
                              }
                            },
                            "name": "centerPoint"
                          },
                          "computed": false
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 18374,
                        "end": 18886,
                        "loc": {
                          "start": {
                            "line": 475,
                            "column": 45
                          },
                          "end": {
                            "line": 482,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 18389,
                            "end": 18476,
                            "loc": {
                              "start": {
                                "line": 476,
                                "column": 12
                              },
                              "end": {
                                "line": 476,
                                "column": 99
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 18393,
                                "end": 18475,
                                "loc": {
                                  "start": {
                                    "line": 476,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 476,
                                    "column": 98
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 18393,
                                  "end": 18396,
                                  "loc": {
                                    "start": {
                                      "line": 476,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 476,
                                      "column": 19
                                    }
                                  },
                                  "name": "mid"
                                },
                                "init": {
                                  "type": "CallExpression",
                                  "start": 18399,
                                  "end": 18475,
                                  "loc": {
                                    "start": {
                                      "line": 476,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 476,
                                      "column": 98
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 18399,
                                    "end": 18472,
                                    "loc": {
                                      "start": {
                                        "line": 476,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 476,
                                        "column": 95
                                      }
                                    },
                                    "object": {
                                      "type": "CallExpression",
                                      "start": 18399,
                                      "end": 18459,
                                      "loc": {
                                        "start": {
                                          "line": 476,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 476,
                                          "column": 82
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 18399,
                                        "end": 18434,
                                        "loc": {
                                          "start": {
                                            "line": 476,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 476,
                                            "column": 57
                                          }
                                        },
                                        "object": {
                                          "type": "CallExpression",
                                          "start": 18399,
                                          "end": 18430,
                                          "loc": {
                                            "start": {
                                              "line": 476,
                                              "column": 22
                                            },
                                            "end": {
                                              "line": 476,
                                              "column": 53
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 18399,
                                            "end": 18428,
                                            "loc": {
                                              "start": {
                                                "line": 476,
                                                "column": 22
                                              },
                                              "end": {
                                                "line": 476,
                                                "column": 51
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 18399,
                                              "end": 18422,
                                              "loc": {
                                                "start": {
                                                  "line": 476,
                                                  "column": 22
                                                },
                                                "end": {
                                                  "line": 476,
                                                  "column": 45
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 18399,
                                                "end": 18413,
                                                "loc": {
                                                  "start": {
                                                    "line": 476,
                                                    "column": 22
                                                  },
                                                  "end": {
                                                    "line": 476,
                                                    "column": 36
                                                  }
                                                },
                                                "object": {
                                                  "type": "MemberExpression",
                                                  "start": 18399,
                                                  "end": 18410,
                                                  "loc": {
                                                    "start": {
                                                      "line": 476,
                                                      "column": 22
                                                    },
                                                    "end": {
                                                      "line": 476,
                                                      "column": 33
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "ThisExpression",
                                                    "start": 18399,
                                                    "end": 18403,
                                                    "loc": {
                                                      "start": {
                                                        "line": 476,
                                                        "column": 22
                                                      },
                                                      "end": {
                                                        "line": 476,
                                                        "column": 26
                                                      }
                                                    }
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 18404,
                                                    "end": 18410,
                                                    "loc": {
                                                      "start": {
                                                        "line": 476,
                                                        "column": 27
                                                      },
                                                      "end": {
                                                        "line": 476,
                                                        "column": 33
                                                      }
                                                    },
                                                    "name": "points"
                                                  },
                                                  "computed": false
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 18411,
                                                  "end": 18412,
                                                  "loc": {
                                                    "start": {
                                                      "line": 476,
                                                      "column": 34
                                                    },
                                                    "end": {
                                                      "line": 476,
                                                      "column": 35
                                                    }
                                                  },
                                                  "value": 1,
                                                  "rawValue": 1,
                                                  "raw": "1"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 18414,
                                                "end": 18422,
                                                "loc": {
                                                  "start": {
                                                    "line": 476,
                                                    "column": 37
                                                  },
                                                  "end": {
                                                    "line": 476,
                                                    "column": 45
                                                  }
                                                },
                                                "name": "position"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 18423,
                                              "end": 18428,
                                              "loc": {
                                                "start": {
                                                  "line": 476,
                                                  "column": 46
                                                },
                                                "end": {
                                                  "line": 476,
                                                  "column": 51
                                                }
                                              },
                                              "name": "clone"
                                            },
                                            "computed": false
                                          },
                                          "arguments": []
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 18431,
                                          "end": 18434,
                                          "loc": {
                                            "start": {
                                              "line": 476,
                                              "column": 54
                                            },
                                            "end": {
                                              "line": 476,
                                              "column": 57
                                            }
                                          },
                                          "name": "add"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "MemberExpression",
                                          "start": 18435,
                                          "end": 18458,
                                          "loc": {
                                            "start": {
                                              "line": 476,
                                              "column": 58
                                            },
                                            "end": {
                                              "line": 476,
                                              "column": 81
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 18435,
                                            "end": 18449,
                                            "loc": {
                                              "start": {
                                                "line": 476,
                                                "column": 58
                                              },
                                              "end": {
                                                "line": 476,
                                                "column": 72
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 18435,
                                              "end": 18446,
                                              "loc": {
                                                "start": {
                                                  "line": 476,
                                                  "column": 58
                                                },
                                                "end": {
                                                  "line": 476,
                                                  "column": 69
                                                }
                                              },
                                              "object": {
                                                "type": "ThisExpression",
                                                "start": 18435,
                                                "end": 18439,
                                                "loc": {
                                                  "start": {
                                                    "line": 476,
                                                    "column": 58
                                                  },
                                                  "end": {
                                                    "line": 476,
                                                    "column": 62
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 18440,
                                                "end": 18446,
                                                "loc": {
                                                  "start": {
                                                    "line": 476,
                                                    "column": 63
                                                  },
                                                  "end": {
                                                    "line": 476,
                                                    "column": 69
                                                  }
                                                },
                                                "name": "points"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Literal",
                                              "start": 18447,
                                              "end": 18448,
                                              "loc": {
                                                "start": {
                                                  "line": 476,
                                                  "column": 70
                                                },
                                                "end": {
                                                  "line": 476,
                                                  "column": 71
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            },
                                            "computed": true
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 18450,
                                            "end": 18458,
                                            "loc": {
                                              "start": {
                                                "line": 476,
                                                "column": 73
                                              },
                                              "end": {
                                                "line": 476,
                                                "column": 81
                                              }
                                            },
                                            "name": "position"
                                          },
                                          "computed": false
                                        }
                                      ]
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 18460,
                                      "end": 18472,
                                      "loc": {
                                        "start": {
                                          "line": 476,
                                          "column": 83
                                        },
                                        "end": {
                                          "line": 476,
                                          "column": 95
                                        }
                                      },
                                      "name": "divideScalar"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Literal",
                                      "start": 18473,
                                      "end": 18474,
                                      "loc": {
                                        "start": {
                                          "line": 476,
                                          "column": 96
                                        },
                                        "end": {
                                          "line": 476,
                                          "column": 97
                                        }
                                      },
                                      "value": 2,
                                      "rawValue": 2,
                                      "raw": "2"
                                    }
                                  ]
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 18490,
                            "end": 18561,
                            "loc": {
                              "start": {
                                "line": 477,
                                "column": 12
                              },
                              "end": {
                                "line": 477,
                                "column": 83
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 18494,
                                "end": 18560,
                                "loc": {
                                  "start": {
                                    "line": 477,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 477,
                                    "column": 82
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 18494,
                                  "end": 18497,
                                  "loc": {
                                    "start": {
                                      "line": 477,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 477,
                                      "column": 19
                                    }
                                  },
                                  "name": "dir"
                                },
                                "init": {
                                  "type": "CallExpression",
                                  "start": 18500,
                                  "end": 18560,
                                  "loc": {
                                    "start": {
                                      "line": 477,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 477,
                                      "column": 82
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 18500,
                                    "end": 18535,
                                    "loc": {
                                      "start": {
                                        "line": 477,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 477,
                                        "column": 57
                                      }
                                    },
                                    "object": {
                                      "type": "CallExpression",
                                      "start": 18500,
                                      "end": 18531,
                                      "loc": {
                                        "start": {
                                          "line": 477,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 477,
                                          "column": 53
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 18500,
                                        "end": 18529,
                                        "loc": {
                                          "start": {
                                            "line": 477,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 477,
                                            "column": 51
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 18500,
                                          "end": 18523,
                                          "loc": {
                                            "start": {
                                              "line": 477,
                                              "column": 22
                                            },
                                            "end": {
                                              "line": 477,
                                              "column": 45
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 18500,
                                            "end": 18514,
                                            "loc": {
                                              "start": {
                                                "line": 477,
                                                "column": 22
                                              },
                                              "end": {
                                                "line": 477,
                                                "column": 36
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 18500,
                                              "end": 18511,
                                              "loc": {
                                                "start": {
                                                  "line": 477,
                                                  "column": 22
                                                },
                                                "end": {
                                                  "line": 477,
                                                  "column": 33
                                                }
                                              },
                                              "object": {
                                                "type": "ThisExpression",
                                                "start": 18500,
                                                "end": 18504,
                                                "loc": {
                                                  "start": {
                                                    "line": 477,
                                                    "column": 22
                                                  },
                                                  "end": {
                                                    "line": 477,
                                                    "column": 26
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 18505,
                                                "end": 18511,
                                                "loc": {
                                                  "start": {
                                                    "line": 477,
                                                    "column": 27
                                                  },
                                                  "end": {
                                                    "line": 477,
                                                    "column": 33
                                                  }
                                                },
                                                "name": "points"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Literal",
                                              "start": 18512,
                                              "end": 18513,
                                              "loc": {
                                                "start": {
                                                  "line": 477,
                                                  "column": 34
                                                },
                                                "end": {
                                                  "line": 477,
                                                  "column": 35
                                                }
                                              },
                                              "value": 1,
                                              "rawValue": 1,
                                              "raw": "1"
                                            },
                                            "computed": true
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 18515,
                                            "end": 18523,
                                            "loc": {
                                              "start": {
                                                "line": 477,
                                                "column": 37
                                              },
                                              "end": {
                                                "line": 477,
                                                "column": 45
                                              }
                                            },
                                            "name": "position"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 18524,
                                          "end": 18529,
                                          "loc": {
                                            "start": {
                                              "line": 477,
                                              "column": 46
                                            },
                                            "end": {
                                              "line": 477,
                                              "column": 51
                                            }
                                          },
                                          "name": "clone"
                                        },
                                        "computed": false
                                      },
                                      "arguments": []
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 18532,
                                      "end": 18535,
                                      "loc": {
                                        "start": {
                                          "line": 477,
                                          "column": 54
                                        },
                                        "end": {
                                          "line": 477,
                                          "column": 57
                                        }
                                      },
                                      "name": "sub"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "MemberExpression",
                                      "start": 18536,
                                      "end": 18559,
                                      "loc": {
                                        "start": {
                                          "line": 477,
                                          "column": 58
                                        },
                                        "end": {
                                          "line": 477,
                                          "column": 81
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 18536,
                                        "end": 18550,
                                        "loc": {
                                          "start": {
                                            "line": 477,
                                            "column": 58
                                          },
                                          "end": {
                                            "line": 477,
                                            "column": 72
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 18536,
                                          "end": 18547,
                                          "loc": {
                                            "start": {
                                              "line": 477,
                                              "column": 58
                                            },
                                            "end": {
                                              "line": 477,
                                              "column": 69
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 18536,
                                            "end": 18540,
                                            "loc": {
                                              "start": {
                                                "line": 477,
                                                "column": 58
                                              },
                                              "end": {
                                                "line": 477,
                                                "column": 62
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 18541,
                                            "end": 18547,
                                            "loc": {
                                              "start": {
                                                "line": 477,
                                                "column": 63
                                              },
                                              "end": {
                                                "line": 477,
                                                "column": 69
                                              }
                                            },
                                            "name": "points"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Literal",
                                          "start": 18548,
                                          "end": 18549,
                                          "loc": {
                                            "start": {
                                              "line": 477,
                                              "column": 70
                                            },
                                            "end": {
                                              "line": 477,
                                              "column": 71
                                            }
                                          },
                                          "value": 0,
                                          "rawValue": 0,
                                          "raw": "0"
                                        },
                                        "computed": true
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 18551,
                                        "end": 18559,
                                        "loc": {
                                          "start": {
                                            "line": 477,
                                            "column": 73
                                          },
                                          "end": {
                                            "line": 477,
                                            "column": 81
                                          }
                                        },
                                        "name": "position"
                                      },
                                      "computed": false
                                    }
                                  ]
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 18575,
                            "end": 18653,
                            "loc": {
                              "start": {
                                "line": 478,
                                "column": 12
                              },
                              "end": {
                                "line": 478,
                                "column": 90
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 18579,
                                "end": 18652,
                                "loc": {
                                  "start": {
                                    "line": 478,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 478,
                                    "column": 89
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 18579,
                                  "end": 18582,
                                  "loc": {
                                    "start": {
                                      "line": 478,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 478,
                                      "column": 19
                                    }
                                  },
                                  "name": "per"
                                },
                                "init": {
                                  "type": "CallExpression",
                                  "start": 18585,
                                  "end": 18652,
                                  "loc": {
                                    "start": {
                                      "line": 478,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 478,
                                      "column": 89
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 18585,
                                    "end": 18611,
                                    "loc": {
                                      "start": {
                                        "line": 478,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 478,
                                        "column": 48
                                      }
                                    },
                                    "object": {
                                      "type": "CallExpression",
                                      "start": 18585,
                                      "end": 18596,
                                      "loc": {
                                        "start": {
                                          "line": 478,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 478,
                                          "column": 33
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 18585,
                                        "end": 18594,
                                        "loc": {
                                          "start": {
                                            "line": 478,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 478,
                                            "column": 31
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 18585,
                                          "end": 18588,
                                          "loc": {
                                            "start": {
                                              "line": 478,
                                              "column": 22
                                            },
                                            "end": {
                                              "line": 478,
                                              "column": 25
                                            }
                                          },
                                          "name": "dir"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 18589,
                                          "end": 18594,
                                          "loc": {
                                            "start": {
                                              "line": 478,
                                              "column": 26
                                            },
                                            "end": {
                                              "line": 478,
                                              "column": 31
                                            }
                                          },
                                          "name": "clone"
                                        },
                                        "computed": false
                                      },
                                      "arguments": []
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 18597,
                                      "end": 18611,
                                      "loc": {
                                        "start": {
                                          "line": 478,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 478,
                                          "column": 48
                                        }
                                      },
                                      "name": "applyAxisAngle"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "NewExpression",
                                      "start": 18612,
                                      "end": 18638,
                                      "loc": {
                                        "start": {
                                          "line": 478,
                                          "column": 49
                                        },
                                        "end": {
                                          "line": 478,
                                          "column": 75
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 18616,
                                        "end": 18629,
                                        "loc": {
                                          "start": {
                                            "line": 478,
                                            "column": 53
                                          },
                                          "end": {
                                            "line": 478,
                                            "column": 66
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 18616,
                                          "end": 18621,
                                          "loc": {
                                            "start": {
                                              "line": 478,
                                              "column": 53
                                            },
                                            "end": {
                                              "line": 478,
                                              "column": 58
                                            }
                                          },
                                          "name": "THREE"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 18622,
                                          "end": 18629,
                                          "loc": {
                                            "start": {
                                              "line": 478,
                                              "column": 59
                                            },
                                            "end": {
                                              "line": 478,
                                              "column": 66
                                            }
                                          },
                                          "name": "Vector3"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Literal",
                                          "start": 18630,
                                          "end": 18631,
                                          "loc": {
                                            "start": {
                                              "line": 478,
                                              "column": 67
                                            },
                                            "end": {
                                              "line": 478,
                                              "column": 68
                                            }
                                          },
                                          "value": 0,
                                          "rawValue": 0,
                                          "raw": "0"
                                        },
                                        {
                                          "type": "Literal",
                                          "start": 18633,
                                          "end": 18634,
                                          "loc": {
                                            "start": {
                                              "line": 478,
                                              "column": 70
                                            },
                                            "end": {
                                              "line": 478,
                                              "column": 71
                                            }
                                          },
                                          "value": 0,
                                          "rawValue": 0,
                                          "raw": "0"
                                        },
                                        {
                                          "type": "Literal",
                                          "start": 18636,
                                          "end": 18637,
                                          "loc": {
                                            "start": {
                                              "line": 478,
                                              "column": 73
                                            },
                                            "end": {
                                              "line": 478,
                                              "column": 74
                                            }
                                          },
                                          "value": 1,
                                          "rawValue": 1,
                                          "raw": "1"
                                        }
                                      ]
                                    },
                                    {
                                      "type": "BinaryExpression",
                                      "start": 18640,
                                      "end": 18651,
                                      "loc": {
                                        "start": {
                                          "line": 478,
                                          "column": 77
                                        },
                                        "end": {
                                          "line": 478,
                                          "column": 88
                                        }
                                      },
                                      "left": {
                                        "type": "MemberExpression",
                                        "start": 18640,
                                        "end": 18647,
                                        "loc": {
                                          "start": {
                                            "line": 478,
                                            "column": 77
                                          },
                                          "end": {
                                            "line": 478,
                                            "column": 84
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 18640,
                                          "end": 18644,
                                          "loc": {
                                            "start": {
                                              "line": 478,
                                              "column": 77
                                            },
                                            "end": {
                                              "line": 478,
                                              "column": 81
                                            }
                                          },
                                          "name": "Math"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 18645,
                                          "end": 18647,
                                          "loc": {
                                            "start": {
                                              "line": 478,
                                              "column": 82
                                            },
                                            "end": {
                                              "line": 478,
                                              "column": 84
                                            }
                                          },
                                          "name": "PI"
                                        },
                                        "computed": false
                                      },
                                      "operator": "/",
                                      "right": {
                                        "type": "Literal",
                                        "start": 18650,
                                        "end": 18651,
                                        "loc": {
                                          "start": {
                                            "line": 478,
                                            "column": 87
                                          },
                                          "end": {
                                            "line": 478,
                                            "column": 88
                                          }
                                        },
                                        "value": 2,
                                        "rawValue": 2,
                                        "raw": "2"
                                      }
                                    }
                                  ]
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 18667,
                            "end": 18726,
                            "loc": {
                              "start": {
                                "line": 479,
                                "column": 12
                              },
                              "end": {
                                "line": 479,
                                "column": 71
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 18671,
                                "end": 18725,
                                "loc": {
                                  "start": {
                                    "line": 479,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 479,
                                    "column": 70
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 18671,
                                  "end": 18680,
                                  "loc": {
                                    "start": {
                                      "line": 479,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 479,
                                      "column": 25
                                    }
                                  },
                                  "name": "dirMidPos"
                                },
                                "init": {
                                  "type": "CallExpression",
                                  "start": 18683,
                                  "end": 18725,
                                  "loc": {
                                    "start": {
                                      "line": 479,
                                      "column": 28
                                    },
                                    "end": {
                                      "line": 479,
                                      "column": 70
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 18683,
                                    "end": 18720,
                                    "loc": {
                                      "start": {
                                        "line": 479,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 479,
                                        "column": 65
                                      }
                                    },
                                    "object": {
                                      "type": "CallExpression",
                                      "start": 18683,
                                      "end": 18716,
                                      "loc": {
                                        "start": {
                                          "line": 479,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 479,
                                          "column": 61
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 18683,
                                        "end": 18714,
                                        "loc": {
                                          "start": {
                                            "line": 479,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 479,
                                            "column": 59
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 18683,
                                          "end": 18708,
                                          "loc": {
                                            "start": {
                                              "line": 479,
                                              "column": 28
                                            },
                                            "end": {
                                              "line": 479,
                                              "column": 53
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 18683,
                                            "end": 18699,
                                            "loc": {
                                              "start": {
                                                "line": 479,
                                                "column": 28
                                              },
                                              "end": {
                                                "line": 479,
                                                "column": 44
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 18683,
                                              "end": 18687,
                                              "loc": {
                                                "start": {
                                                  "line": 479,
                                                  "column": 28
                                                },
                                                "end": {
                                                  "line": 479,
                                                  "column": 32
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 18688,
                                              "end": 18699,
                                              "loc": {
                                                "start": {
                                                  "line": 479,
                                                  "column": 33
                                                },
                                                "end": {
                                                  "line": 479,
                                                  "column": 44
                                                }
                                              },
                                              "name": "centerPoint"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 18700,
                                            "end": 18708,
                                            "loc": {
                                              "start": {
                                                "line": 479,
                                                "column": 45
                                              },
                                              "end": {
                                                "line": 479,
                                                "column": 53
                                              }
                                            },
                                            "name": "position"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 18709,
                                          "end": 18714,
                                          "loc": {
                                            "start": {
                                              "line": 479,
                                              "column": 54
                                            },
                                            "end": {
                                              "line": 479,
                                              "column": 59
                                            }
                                          },
                                          "name": "clone"
                                        },
                                        "computed": false
                                      },
                                      "arguments": []
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 18717,
                                      "end": 18720,
                                      "loc": {
                                        "start": {
                                          "line": 479,
                                          "column": 62
                                        },
                                        "end": {
                                          "line": 479,
                                          "column": 65
                                        }
                                      },
                                      "name": "sub"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 18721,
                                      "end": 18724,
                                      "loc": {
                                        "start": {
                                          "line": 479,
                                          "column": 66
                                        },
                                        "end": {
                                          "line": 479,
                                          "column": 69
                                        }
                                      },
                                      "name": "mid"
                                    }
                                  ]
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 18740,
                            "end": 18801,
                            "loc": {
                              "start": {
                                "line": 480,
                                "column": 12
                              },
                              "end": {
                                "line": 480,
                                "column": 73
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 18744,
                                "end": 18800,
                                "loc": {
                                  "start": {
                                    "line": 480,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 480,
                                    "column": 72
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 18744,
                                  "end": 18750,
                                  "loc": {
                                    "start": {
                                      "line": 480,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 480,
                                      "column": 22
                                    }
                                  },
                                  "name": "newPos"
                                },
                                "init": {
                                  "type": "CallExpression",
                                  "start": 18753,
                                  "end": 18800,
                                  "loc": {
                                    "start": {
                                      "line": 480,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 480,
                                      "column": 72
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 18753,
                                    "end": 18795,
                                    "loc": {
                                      "start": {
                                        "line": 480,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 480,
                                        "column": 67
                                      }
                                    },
                                    "object": {
                                      "type": "CallExpression",
                                      "start": 18753,
                                      "end": 18791,
                                      "loc": {
                                        "start": {
                                          "line": 480,
                                          "column": 25
                                        },
                                        "end": {
                                          "line": 480,
                                          "column": 63
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 18753,
                                        "end": 18786,
                                        "loc": {
                                          "start": {
                                            "line": 480,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 480,
                                            "column": 58
                                          }
                                        },
                                        "object": {
                                          "type": "CallExpression",
                                          "start": 18753,
                                          "end": 18770,
                                          "loc": {
                                            "start": {
                                              "line": 480,
                                              "column": 25
                                            },
                                            "end": {
                                              "line": 480,
                                              "column": 42
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 18753,
                                            "end": 18768,
                                            "loc": {
                                              "start": {
                                                "line": 480,
                                                "column": 25
                                              },
                                              "end": {
                                                "line": 480,
                                                "column": 40
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 18753,
                                              "end": 18762,
                                              "loc": {
                                                "start": {
                                                  "line": 480,
                                                  "column": 25
                                                },
                                                "end": {
                                                  "line": 480,
                                                  "column": 34
                                                }
                                              },
                                              "name": "dirMidPos"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 18763,
                                              "end": 18768,
                                              "loc": {
                                                "start": {
                                                  "line": 480,
                                                  "column": 35
                                                },
                                                "end": {
                                                  "line": 480,
                                                  "column": 40
                                                }
                                              },
                                              "name": "clone"
                                            },
                                            "computed": false
                                          },
                                          "arguments": []
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 18771,
                                          "end": 18786,
                                          "loc": {
                                            "start": {
                                              "line": 480,
                                              "column": 43
                                            },
                                            "end": {
                                              "line": 480,
                                              "column": 58
                                            }
                                          },
                                          "name": "projectOnVector"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 18787,
                                          "end": 18790,
                                          "loc": {
                                            "start": {
                                              "line": 480,
                                              "column": 59
                                            },
                                            "end": {
                                              "line": 480,
                                              "column": 62
                                            }
                                          },
                                          "name": "per"
                                        }
                                      ]
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 18792,
                                      "end": 18795,
                                      "loc": {
                                        "start": {
                                          "line": 480,
                                          "column": 64
                                        },
                                        "end": {
                                          "line": 480,
                                          "column": 67
                                        }
                                      },
                                      "name": "add"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 18796,
                                      "end": 18799,
                                      "loc": {
                                        "start": {
                                          "line": 480,
                                          "column": 68
                                        },
                                        "end": {
                                          "line": 480,
                                          "column": 71
                                        }
                                      },
                                      "name": "mid"
                                    }
                                  ]
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 18815,
                            "end": 18875,
                            "loc": {
                              "start": {
                                "line": 481,
                                "column": 12
                              },
                              "end": {
                                "line": 481,
                                "column": 72
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 18815,
                              "end": 18874,
                              "loc": {
                                "start": {
                                  "line": 481,
                                  "column": 12
                                },
                                "end": {
                                  "line": 481,
                                  "column": 71
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 18815,
                                "end": 18844,
                                "loc": {
                                  "start": {
                                    "line": 481,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 481,
                                    "column": 41
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 18815,
                                  "end": 18840,
                                  "loc": {
                                    "start": {
                                      "line": 481,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 481,
                                      "column": 37
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 18815,
                                    "end": 18831,
                                    "loc": {
                                      "start": {
                                        "line": 481,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 481,
                                        "column": 28
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 18815,
                                      "end": 18819,
                                      "loc": {
                                        "start": {
                                          "line": 481,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 481,
                                          "column": 16
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 18820,
                                      "end": 18831,
                                      "loc": {
                                        "start": {
                                          "line": 481,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 481,
                                          "column": 28
                                        }
                                      },
                                      "name": "centerPoint"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 18832,
                                    "end": 18840,
                                    "loc": {
                                      "start": {
                                        "line": 481,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 481,
                                        "column": 37
                                      }
                                    },
                                    "name": "position"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 18841,
                                  "end": 18844,
                                  "loc": {
                                    "start": {
                                      "line": 481,
                                      "column": 38
                                    },
                                    "end": {
                                      "line": 481,
                                      "column": 41
                                    }
                                  },
                                  "name": "set"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 18845,
                                  "end": 18853,
                                  "loc": {
                                    "start": {
                                      "line": 481,
                                      "column": 42
                                    },
                                    "end": {
                                      "line": 481,
                                      "column": 50
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 18845,
                                    "end": 18851,
                                    "loc": {
                                      "start": {
                                        "line": 481,
                                        "column": 42
                                      },
                                      "end": {
                                        "line": 481,
                                        "column": 48
                                      }
                                    },
                                    "name": "newPos"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 18852,
                                    "end": 18853,
                                    "loc": {
                                      "start": {
                                        "line": 481,
                                        "column": 49
                                      },
                                      "end": {
                                        "line": 481,
                                        "column": 50
                                      }
                                    },
                                    "name": "x"
                                  },
                                  "computed": false
                                },
                                {
                                  "type": "MemberExpression",
                                  "start": 18855,
                                  "end": 18863,
                                  "loc": {
                                    "start": {
                                      "line": 481,
                                      "column": 52
                                    },
                                    "end": {
                                      "line": 481,
                                      "column": 60
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 18855,
                                    "end": 18861,
                                    "loc": {
                                      "start": {
                                        "line": 481,
                                        "column": 52
                                      },
                                      "end": {
                                        "line": 481,
                                        "column": 58
                                      }
                                    },
                                    "name": "newPos"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 18862,
                                    "end": 18863,
                                    "loc": {
                                      "start": {
                                        "line": 481,
                                        "column": 59
                                      },
                                      "end": {
                                        "line": 481,
                                        "column": 60
                                      }
                                    },
                                    "name": "y"
                                  },
                                  "computed": false
                                },
                                {
                                  "type": "MemberExpression",
                                  "start": 18865,
                                  "end": 18873,
                                  "loc": {
                                    "start": {
                                      "line": 481,
                                      "column": 62
                                    },
                                    "end": {
                                      "line": 481,
                                      "column": 70
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 18865,
                                    "end": 18871,
                                    "loc": {
                                      "start": {
                                        "line": 481,
                                        "column": 62
                                      },
                                      "end": {
                                        "line": 481,
                                        "column": 68
                                      }
                                    },
                                    "name": "newPos"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 18872,
                                    "end": 18873,
                                    "loc": {
                                      "start": {
                                        "line": 481,
                                        "column": 69
                                      },
                                      "end": {
                                        "line": 481,
                                        "column": 70
                                      }
                                    },
                                    "name": "z"
                                  },
                                  "computed": false
                                }
                              ]
                            }
                          }
                        ]
                      },
                      "alternate": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 18898,
                      "end": 18974,
                      "loc": {
                        "start": {
                          "line": 484,
                          "column": 8
                        },
                        "end": {
                          "line": 484,
                          "column": 84
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 18902,
                          "end": 18973,
                          "loc": {
                            "start": {
                              "line": 484,
                              "column": 12
                            },
                            "end": {
                              "line": 484,
                              "column": 83
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 18902,
                            "end": 18909,
                            "loc": {
                              "start": {
                                "line": 484,
                                "column": 12
                              },
                              "end": {
                                "line": 484,
                                "column": 19
                              }
                            },
                            "name": "radius0"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 18912,
                            "end": 18973,
                            "loc": {
                              "start": {
                                "line": 484,
                                "column": 22
                              },
                              "end": {
                                "line": 484,
                                "column": 83
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 18912,
                              "end": 18946,
                              "loc": {
                                "start": {
                                  "line": 484,
                                  "column": 22
                                },
                                "end": {
                                  "line": 484,
                                  "column": 56
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 18912,
                                "end": 18935,
                                "loc": {
                                  "start": {
                                    "line": 484,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 484,
                                    "column": 45
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 18912,
                                  "end": 18926,
                                  "loc": {
                                    "start": {
                                      "line": 484,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 484,
                                      "column": 36
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 18912,
                                    "end": 18923,
                                    "loc": {
                                      "start": {
                                        "line": 484,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 484,
                                        "column": 33
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 18912,
                                      "end": 18916,
                                      "loc": {
                                        "start": {
                                          "line": 484,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 484,
                                          "column": 26
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 18917,
                                      "end": 18923,
                                      "loc": {
                                        "start": {
                                          "line": 484,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 484,
                                          "column": 33
                                        }
                                      },
                                      "name": "points"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Literal",
                                    "start": 18924,
                                    "end": 18925,
                                    "loc": {
                                      "start": {
                                        "line": 484,
                                        "column": 34
                                      },
                                      "end": {
                                        "line": 484,
                                        "column": 35
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 18927,
                                  "end": 18935,
                                  "loc": {
                                    "start": {
                                      "line": 484,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 484,
                                      "column": 45
                                    }
                                  },
                                  "name": "position"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 18936,
                                "end": 18946,
                                "loc": {
                                  "start": {
                                    "line": 484,
                                    "column": 46
                                  },
                                  "end": {
                                    "line": 484,
                                    "column": 56
                                  }
                                },
                                "name": "distanceTo"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 18947,
                                "end": 18972,
                                "loc": {
                                  "start": {
                                    "line": 484,
                                    "column": 57
                                  },
                                  "end": {
                                    "line": 484,
                                    "column": 82
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 18947,
                                  "end": 18963,
                                  "loc": {
                                    "start": {
                                      "line": 484,
                                      "column": 57
                                    },
                                    "end": {
                                      "line": 484,
                                      "column": 73
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 18947,
                                    "end": 18951,
                                    "loc": {
                                      "start": {
                                        "line": 484,
                                        "column": 57
                                      },
                                      "end": {
                                        "line": 484,
                                        "column": 61
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 18952,
                                    "end": 18963,
                                    "loc": {
                                      "start": {
                                        "line": 484,
                                        "column": 62
                                      },
                                      "end": {
                                        "line": 484,
                                        "column": 73
                                      }
                                    },
                                    "name": "centerPoint"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 18964,
                                  "end": 18972,
                                  "loc": {
                                    "start": {
                                      "line": 484,
                                      "column": 74
                                    },
                                    "end": {
                                      "line": 484,
                                      "column": 82
                                    }
                                  },
                                  "name": "position"
                                },
                                "computed": false
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 18984,
                      "end": 19060,
                      "loc": {
                        "start": {
                          "line": 485,
                          "column": 8
                        },
                        "end": {
                          "line": 485,
                          "column": 84
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 18988,
                          "end": 19059,
                          "loc": {
                            "start": {
                              "line": 485,
                              "column": 12
                            },
                            "end": {
                              "line": 485,
                              "column": 83
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 18988,
                            "end": 18995,
                            "loc": {
                              "start": {
                                "line": 485,
                                "column": 12
                              },
                              "end": {
                                "line": 485,
                                "column": 19
                              }
                            },
                            "name": "radius1"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 18998,
                            "end": 19059,
                            "loc": {
                              "start": {
                                "line": 485,
                                "column": 22
                              },
                              "end": {
                                "line": 485,
                                "column": 83
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 18998,
                              "end": 19032,
                              "loc": {
                                "start": {
                                  "line": 485,
                                  "column": 22
                                },
                                "end": {
                                  "line": 485,
                                  "column": 56
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 18998,
                                "end": 19021,
                                "loc": {
                                  "start": {
                                    "line": 485,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 485,
                                    "column": 45
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 18998,
                                  "end": 19012,
                                  "loc": {
                                    "start": {
                                      "line": 485,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 485,
                                      "column": 36
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 18998,
                                    "end": 19009,
                                    "loc": {
                                      "start": {
                                        "line": 485,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 485,
                                        "column": 33
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 18998,
                                      "end": 19002,
                                      "loc": {
                                        "start": {
                                          "line": 485,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 485,
                                          "column": 26
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 19003,
                                      "end": 19009,
                                      "loc": {
                                        "start": {
                                          "line": 485,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 485,
                                          "column": 33
                                        }
                                      },
                                      "name": "points"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Literal",
                                    "start": 19010,
                                    "end": 19011,
                                    "loc": {
                                      "start": {
                                        "line": 485,
                                        "column": 34
                                      },
                                      "end": {
                                        "line": 485,
                                        "column": 35
                                      }
                                    },
                                    "value": 1,
                                    "rawValue": 1,
                                    "raw": "1"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 19013,
                                  "end": 19021,
                                  "loc": {
                                    "start": {
                                      "line": 485,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 485,
                                      "column": 45
                                    }
                                  },
                                  "name": "position"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 19022,
                                "end": 19032,
                                "loc": {
                                  "start": {
                                    "line": 485,
                                    "column": 46
                                  },
                                  "end": {
                                    "line": 485,
                                    "column": 56
                                  }
                                },
                                "name": "distanceTo"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 19033,
                                "end": 19058,
                                "loc": {
                                  "start": {
                                    "line": 485,
                                    "column": 57
                                  },
                                  "end": {
                                    "line": 485,
                                    "column": 82
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 19033,
                                  "end": 19049,
                                  "loc": {
                                    "start": {
                                      "line": 485,
                                      "column": 57
                                    },
                                    "end": {
                                      "line": 485,
                                      "column": 73
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 19033,
                                    "end": 19037,
                                    "loc": {
                                      "start": {
                                        "line": 485,
                                        "column": 57
                                      },
                                      "end": {
                                        "line": 485,
                                        "column": 61
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 19038,
                                    "end": 19049,
                                    "loc": {
                                      "start": {
                                        "line": 485,
                                        "column": 62
                                      },
                                      "end": {
                                        "line": 485,
                                        "column": 73
                                      }
                                    },
                                    "name": "centerPoint"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 19050,
                                  "end": 19058,
                                  "loc": {
                                    "start": {
                                      "line": 485,
                                      "column": 74
                                    },
                                    "end": {
                                      "line": 485,
                                      "column": 82
                                    }
                                  },
                                  "name": "position"
                                },
                                "computed": false
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 19070,
                      "end": 19291,
                      "loc": {
                        "start": {
                          "line": 486,
                          "column": 8
                        },
                        "end": {
                          "line": 491,
                          "column": 50
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 19074,
                        "end": 19103,
                        "loc": {
                          "start": {
                            "line": 486,
                            "column": 12
                          },
                          "end": {
                            "line": 486,
                            "column": 41
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 19074,
                          "end": 19084,
                          "loc": {
                            "start": {
                              "line": 486,
                              "column": 12
                            },
                            "end": {
                              "line": 486,
                              "column": 22
                            }
                          },
                          "name": "movedPoint"
                        },
                        "operator": "===",
                        "right": {
                          "type": "MemberExpression",
                          "start": 19089,
                          "end": 19103,
                          "loc": {
                            "start": {
                              "line": 486,
                              "column": 27
                            },
                            "end": {
                              "line": 486,
                              "column": 41
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 19089,
                            "end": 19100,
                            "loc": {
                              "start": {
                                "line": 486,
                                "column": 27
                              },
                              "end": {
                                "line": 486,
                                "column": 38
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 19089,
                              "end": 19093,
                              "loc": {
                                "start": {
                                  "line": 486,
                                  "column": 27
                                },
                                "end": {
                                  "line": 486,
                                  "column": 31
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 19094,
                              "end": 19100,
                              "loc": {
                                "start": {
                                  "line": 486,
                                  "column": 32
                                },
                                "end": {
                                  "line": 486,
                                  "column": 38
                                }
                              },
                              "name": "points"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Literal",
                            "start": 19101,
                            "end": 19102,
                            "loc": {
                              "start": {
                                "line": 486,
                                "column": 39
                              },
                              "end": {
                                "line": 486,
                                "column": 40
                              }
                            },
                            "value": 0,
                            "rawValue": 0,
                            "raw": "0"
                          },
                          "computed": true
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 19118,
                        "end": 19140,
                        "loc": {
                          "start": {
                            "line": 487,
                            "column": 12
                          },
                          "end": {
                            "line": 487,
                            "column": 34
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 19118,
                          "end": 19139,
                          "loc": {
                            "start": {
                              "line": 487,
                              "column": 12
                            },
                            "end": {
                              "line": 487,
                              "column": 33
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "MemberExpression",
                            "start": 19118,
                            "end": 19129,
                            "loc": {
                              "start": {
                                "line": 487,
                                "column": 12
                              },
                              "end": {
                                "line": 487,
                                "column": 23
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 19118,
                              "end": 19122,
                              "loc": {
                                "start": {
                                  "line": 487,
                                  "column": 12
                                },
                                "end": {
                                  "line": 487,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 19123,
                              "end": 19129,
                              "loc": {
                                "start": {
                                  "line": 487,
                                  "column": 17
                                },
                                "end": {
                                  "line": 487,
                                  "column": 23
                                }
                              },
                              "name": "radius"
                            },
                            "computed": false
                          },
                          "right": {
                            "type": "Identifier",
                            "start": 19132,
                            "end": 19139,
                            "loc": {
                              "start": {
                                "line": 487,
                                "column": 26
                              },
                              "end": {
                                "line": 487,
                                "column": 33
                              }
                            },
                            "name": "radius1"
                          }
                        }
                      },
                      "alternate": {
                        "type": "IfStatement",
                        "start": 19155,
                        "end": 19291,
                        "loc": {
                          "start": {
                            "line": 488,
                            "column": 13
                          },
                          "end": {
                            "line": 491,
                            "column": 50
                          }
                        },
                        "test": {
                          "type": "BinaryExpression",
                          "start": 19159,
                          "end": 19188,
                          "loc": {
                            "start": {
                              "line": 488,
                              "column": 17
                            },
                            "end": {
                              "line": 488,
                              "column": 46
                            }
                          },
                          "left": {
                            "type": "Identifier",
                            "start": 19159,
                            "end": 19169,
                            "loc": {
                              "start": {
                                "line": 488,
                                "column": 17
                              },
                              "end": {
                                "line": 488,
                                "column": 27
                              }
                            },
                            "name": "movedPoint"
                          },
                          "operator": "===",
                          "right": {
                            "type": "MemberExpression",
                            "start": 19174,
                            "end": 19188,
                            "loc": {
                              "start": {
                                "line": 488,
                                "column": 32
                              },
                              "end": {
                                "line": 488,
                                "column": 46
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 19174,
                              "end": 19185,
                              "loc": {
                                "start": {
                                  "line": 488,
                                  "column": 32
                                },
                                "end": {
                                  "line": 488,
                                  "column": 43
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 19174,
                                "end": 19178,
                                "loc": {
                                  "start": {
                                    "line": 488,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 488,
                                    "column": 36
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 19179,
                                "end": 19185,
                                "loc": {
                                  "start": {
                                    "line": 488,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 488,
                                    "column": 43
                                  }
                                },
                                "name": "points"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Literal",
                              "start": 19186,
                              "end": 19187,
                              "loc": {
                                "start": {
                                  "line": 488,
                                  "column": 44
                                },
                                "end": {
                                  "line": 488,
                                  "column": 45
                                }
                              },
                              "value": 1,
                              "rawValue": 1,
                              "raw": "1"
                            },
                            "computed": true
                          }
                        },
                        "consequent": {
                          "type": "ExpressionStatement",
                          "start": 19203,
                          "end": 19225,
                          "loc": {
                            "start": {
                              "line": 489,
                              "column": 12
                            },
                            "end": {
                              "line": 489,
                              "column": 34
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 19203,
                            "end": 19224,
                            "loc": {
                              "start": {
                                "line": 489,
                                "column": 12
                              },
                              "end": {
                                "line": 489,
                                "column": 33
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "MemberExpression",
                              "start": 19203,
                              "end": 19214,
                              "loc": {
                                "start": {
                                  "line": 489,
                                  "column": 12
                                },
                                "end": {
                                  "line": 489,
                                  "column": 23
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 19203,
                                "end": 19207,
                                "loc": {
                                  "start": {
                                    "line": 489,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 489,
                                    "column": 16
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 19208,
                                "end": 19214,
                                "loc": {
                                  "start": {
                                    "line": 489,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 489,
                                    "column": 23
                                  }
                                },
                                "name": "radius"
                              },
                              "computed": false
                            },
                            "right": {
                              "type": "Identifier",
                              "start": 19217,
                              "end": 19224,
                              "loc": {
                                "start": {
                                  "line": 489,
                                  "column": 26
                                },
                                "end": {
                                  "line": 489,
                                  "column": 33
                                }
                              },
                              "name": "radius0"
                            }
                          }
                        },
                        "alternate": {
                          "type": "ExpressionStatement",
                          "start": 19253,
                          "end": 19291,
                          "loc": {
                            "start": {
                              "line": 491,
                              "column": 12
                            },
                            "end": {
                              "line": 491,
                              "column": 50
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 19253,
                            "end": 19290,
                            "loc": {
                              "start": {
                                "line": 491,
                                "column": 12
                              },
                              "end": {
                                "line": 491,
                                "column": 49
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "MemberExpression",
                              "start": 19253,
                              "end": 19264,
                              "loc": {
                                "start": {
                                  "line": 491,
                                  "column": 12
                                },
                                "end": {
                                  "line": 491,
                                  "column": 23
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 19253,
                                "end": 19257,
                                "loc": {
                                  "start": {
                                    "line": 491,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 491,
                                    "column": 16
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 19258,
                                "end": 19264,
                                "loc": {
                                  "start": {
                                    "line": 491,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 491,
                                    "column": 23
                                  }
                                },
                                "name": "radius"
                              },
                              "computed": false
                            },
                            "right": {
                              "type": "BinaryExpression",
                              "start": 19267,
                              "end": 19290,
                              "loc": {
                                "start": {
                                  "line": 491,
                                  "column": 26
                                },
                                "end": {
                                  "line": 491,
                                  "column": 49
                                }
                              },
                              "left": {
                                "type": "BinaryExpression",
                                "start": 19268,
                                "end": 19285,
                                "loc": {
                                  "start": {
                                    "line": 491,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 491,
                                    "column": 44
                                  }
                                },
                                "left": {
                                  "type": "Identifier",
                                  "start": 19268,
                                  "end": 19275,
                                  "loc": {
                                    "start": {
                                      "line": 491,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 491,
                                      "column": 34
                                    }
                                  },
                                  "name": "radius0"
                                },
                                "operator": "+",
                                "right": {
                                  "type": "Identifier",
                                  "start": 19278,
                                  "end": 19285,
                                  "loc": {
                                    "start": {
                                      "line": 491,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 491,
                                      "column": 44
                                    }
                                  },
                                  "name": "radius1"
                                },
                                "parenthesizedExpression": true
                              },
                              "operator": "/",
                              "right": {
                                "type": "Literal",
                                "start": 19289,
                                "end": 19290,
                                "loc": {
                                  "start": {
                                    "line": 491,
                                    "column": 48
                                  },
                                  "end": {
                                    "line": 491,
                                    "column": 49
                                  }
                                },
                                "value": 2,
                                "rawValue": 2,
                                "raw": "2"
                              }
                            }
                          }
                        }
                      }
                    },
                    {
                      "type": "IfStatement",
                      "start": 19301,
                      "end": 19458,
                      "loc": {
                        "start": {
                          "line": 492,
                          "column": 8
                        },
                        "end": {
                          "line": 493,
                          "column": 121
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 19305,
                        "end": 19334,
                        "loc": {
                          "start": {
                            "line": 492,
                            "column": 12
                          },
                          "end": {
                            "line": 492,
                            "column": 41
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 19305,
                          "end": 19315,
                          "loc": {
                            "start": {
                              "line": 492,
                              "column": 12
                            },
                            "end": {
                              "line": 492,
                              "column": 22
                            }
                          },
                          "name": "movedPoint"
                        },
                        "operator": "===",
                        "right": {
                          "type": "MemberExpression",
                          "start": 19320,
                          "end": 19334,
                          "loc": {
                            "start": {
                              "line": 492,
                              "column": 27
                            },
                            "end": {
                              "line": 492,
                              "column": 41
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 19320,
                            "end": 19331,
                            "loc": {
                              "start": {
                                "line": 492,
                                "column": 27
                              },
                              "end": {
                                "line": 492,
                                "column": 38
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 19320,
                              "end": 19324,
                              "loc": {
                                "start": {
                                  "line": 492,
                                  "column": 27
                                },
                                "end": {
                                  "line": 492,
                                  "column": 31
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 19325,
                              "end": 19331,
                              "loc": {
                                "start": {
                                  "line": 492,
                                  "column": 32
                                },
                                "end": {
                                  "line": 492,
                                  "column": 38
                                }
                              },
                              "name": "points"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Literal",
                            "start": 19332,
                            "end": 19333,
                            "loc": {
                              "start": {
                                "line": 492,
                                "column": 39
                              },
                              "end": {
                                "line": 492,
                                "column": 40
                              }
                            },
                            "value": 0,
                            "rawValue": 0,
                            "raw": "0"
                          },
                          "computed": true
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 19349,
                        "end": 19458,
                        "loc": {
                          "start": {
                            "line": 493,
                            "column": 12
                          },
                          "end": {
                            "line": 493,
                            "column": 121
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 19349,
                          "end": 19457,
                          "loc": {
                            "start": {
                              "line": 493,
                              "column": 12
                            },
                            "end": {
                              "line": 493,
                              "column": 120
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 19349,
                            "end": 19430,
                            "loc": {
                              "start": {
                                "line": 493,
                                "column": 12
                              },
                              "end": {
                                "line": 493,
                                "column": 93
                              }
                            },
                            "object": {
                              "type": "CallExpression",
                              "start": 19349,
                              "end": 19426,
                              "loc": {
                                "start": {
                                  "line": 493,
                                  "column": 12
                                },
                                "end": {
                                  "line": 493,
                                  "column": 89
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 19349,
                                "end": 19413,
                                "loc": {
                                  "start": {
                                    "line": 493,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 493,
                                    "column": 76
                                  }
                                },
                                "object": {
                                  "type": "CallExpression",
                                  "start": 19349,
                                  "end": 19403,
                                  "loc": {
                                    "start": {
                                      "line": 493,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 493,
                                      "column": 66
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 19349,
                                    "end": 19376,
                                    "loc": {
                                      "start": {
                                        "line": 493,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 493,
                                        "column": 39
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 19349,
                                      "end": 19372,
                                      "loc": {
                                        "start": {
                                          "line": 493,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 493,
                                          "column": 35
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 19349,
                                        "end": 19363,
                                        "loc": {
                                          "start": {
                                            "line": 493,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 493,
                                            "column": 26
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 19349,
                                          "end": 19360,
                                          "loc": {
                                            "start": {
                                              "line": 493,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 493,
                                              "column": 23
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 19349,
                                            "end": 19353,
                                            "loc": {
                                              "start": {
                                                "line": 493,
                                                "column": 12
                                              },
                                              "end": {
                                                "line": 493,
                                                "column": 16
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 19354,
                                            "end": 19360,
                                            "loc": {
                                              "start": {
                                                "line": 493,
                                                "column": 17
                                              },
                                              "end": {
                                                "line": 493,
                                                "column": 23
                                              }
                                            },
                                            "name": "points"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Literal",
                                          "start": 19361,
                                          "end": 19362,
                                          "loc": {
                                            "start": {
                                              "line": 493,
                                              "column": 24
                                            },
                                            "end": {
                                              "line": 493,
                                              "column": 25
                                            }
                                          },
                                          "value": 0,
                                          "rawValue": 0,
                                          "raw": "0"
                                        },
                                        "computed": true
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 19364,
                                        "end": 19372,
                                        "loc": {
                                          "start": {
                                            "line": 493,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 493,
                                            "column": 35
                                          }
                                        },
                                        "name": "position"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 19373,
                                      "end": 19376,
                                      "loc": {
                                        "start": {
                                          "line": 493,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 493,
                                          "column": 39
                                        }
                                      },
                                      "name": "sub"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "MemberExpression",
                                      "start": 19377,
                                      "end": 19402,
                                      "loc": {
                                        "start": {
                                          "line": 493,
                                          "column": 40
                                        },
                                        "end": {
                                          "line": 493,
                                          "column": 65
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 19377,
                                        "end": 19393,
                                        "loc": {
                                          "start": {
                                            "line": 493,
                                            "column": 40
                                          },
                                          "end": {
                                            "line": 493,
                                            "column": 56
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 19377,
                                          "end": 19381,
                                          "loc": {
                                            "start": {
                                              "line": 493,
                                              "column": 40
                                            },
                                            "end": {
                                              "line": 493,
                                              "column": 44
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 19382,
                                          "end": 19393,
                                          "loc": {
                                            "start": {
                                              "line": 493,
                                              "column": 45
                                            },
                                            "end": {
                                              "line": 493,
                                              "column": 56
                                            }
                                          },
                                          "name": "centerPoint"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 19394,
                                        "end": 19402,
                                        "loc": {
                                          "start": {
                                            "line": 493,
                                            "column": 57
                                          },
                                          "end": {
                                            "line": 493,
                                            "column": 65
                                          }
                                        },
                                        "name": "position"
                                      },
                                      "computed": false
                                    }
                                  ]
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 19404,
                                  "end": 19413,
                                  "loc": {
                                    "start": {
                                      "line": 493,
                                      "column": 67
                                    },
                                    "end": {
                                      "line": 493,
                                      "column": 76
                                    }
                                  },
                                  "name": "setLength"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 19414,
                                  "end": 19425,
                                  "loc": {
                                    "start": {
                                      "line": 493,
                                      "column": 77
                                    },
                                    "end": {
                                      "line": 493,
                                      "column": 88
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 19414,
                                    "end": 19418,
                                    "loc": {
                                      "start": {
                                        "line": 493,
                                        "column": 77
                                      },
                                      "end": {
                                        "line": 493,
                                        "column": 81
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 19419,
                                    "end": 19425,
                                    "loc": {
                                      "start": {
                                        "line": 493,
                                        "column": 82
                                      },
                                      "end": {
                                        "line": 493,
                                        "column": 88
                                      }
                                    },
                                    "name": "radius"
                                  },
                                  "computed": false
                                }
                              ]
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 19427,
                              "end": 19430,
                              "loc": {
                                "start": {
                                  "line": 493,
                                  "column": 90
                                },
                                "end": {
                                  "line": 493,
                                  "column": 93
                                }
                              },
                              "name": "add"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "MemberExpression",
                              "start": 19431,
                              "end": 19456,
                              "loc": {
                                "start": {
                                  "line": 493,
                                  "column": 94
                                },
                                "end": {
                                  "line": 493,
                                  "column": 119
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 19431,
                                "end": 19447,
                                "loc": {
                                  "start": {
                                    "line": 493,
                                    "column": 94
                                  },
                                  "end": {
                                    "line": 493,
                                    "column": 110
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 19431,
                                  "end": 19435,
                                  "loc": {
                                    "start": {
                                      "line": 493,
                                      "column": 94
                                    },
                                    "end": {
                                      "line": 493,
                                      "column": 98
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 19436,
                                  "end": 19447,
                                  "loc": {
                                    "start": {
                                      "line": 493,
                                      "column": 99
                                    },
                                    "end": {
                                      "line": 493,
                                      "column": 110
                                    }
                                  },
                                  "name": "centerPoint"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 19448,
                                "end": 19456,
                                "loc": {
                                  "start": {
                                    "line": 493,
                                    "column": 111
                                  },
                                  "end": {
                                    "line": 493,
                                    "column": 119
                                  }
                                },
                                "name": "position"
                              },
                              "computed": false
                            }
                          ]
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 19468,
                      "end": 19625,
                      "loc": {
                        "start": {
                          "line": 494,
                          "column": 8
                        },
                        "end": {
                          "line": 495,
                          "column": 121
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 19472,
                        "end": 19501,
                        "loc": {
                          "start": {
                            "line": 494,
                            "column": 12
                          },
                          "end": {
                            "line": 494,
                            "column": 41
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 19472,
                          "end": 19482,
                          "loc": {
                            "start": {
                              "line": 494,
                              "column": 12
                            },
                            "end": {
                              "line": 494,
                              "column": 22
                            }
                          },
                          "name": "movedPoint"
                        },
                        "operator": "===",
                        "right": {
                          "type": "MemberExpression",
                          "start": 19487,
                          "end": 19501,
                          "loc": {
                            "start": {
                              "line": 494,
                              "column": 27
                            },
                            "end": {
                              "line": 494,
                              "column": 41
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 19487,
                            "end": 19498,
                            "loc": {
                              "start": {
                                "line": 494,
                                "column": 27
                              },
                              "end": {
                                "line": 494,
                                "column": 38
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 19487,
                              "end": 19491,
                              "loc": {
                                "start": {
                                  "line": 494,
                                  "column": 27
                                },
                                "end": {
                                  "line": 494,
                                  "column": 31
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 19492,
                              "end": 19498,
                              "loc": {
                                "start": {
                                  "line": 494,
                                  "column": 32
                                },
                                "end": {
                                  "line": 494,
                                  "column": 38
                                }
                              },
                              "name": "points"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Literal",
                            "start": 19499,
                            "end": 19500,
                            "loc": {
                              "start": {
                                "line": 494,
                                "column": 39
                              },
                              "end": {
                                "line": 494,
                                "column": 40
                              }
                            },
                            "value": 1,
                            "rawValue": 1,
                            "raw": "1"
                          },
                          "computed": true
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 19516,
                        "end": 19625,
                        "loc": {
                          "start": {
                            "line": 495,
                            "column": 12
                          },
                          "end": {
                            "line": 495,
                            "column": 121
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 19516,
                          "end": 19624,
                          "loc": {
                            "start": {
                              "line": 495,
                              "column": 12
                            },
                            "end": {
                              "line": 495,
                              "column": 120
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 19516,
                            "end": 19597,
                            "loc": {
                              "start": {
                                "line": 495,
                                "column": 12
                              },
                              "end": {
                                "line": 495,
                                "column": 93
                              }
                            },
                            "object": {
                              "type": "CallExpression",
                              "start": 19516,
                              "end": 19593,
                              "loc": {
                                "start": {
                                  "line": 495,
                                  "column": 12
                                },
                                "end": {
                                  "line": 495,
                                  "column": 89
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 19516,
                                "end": 19580,
                                "loc": {
                                  "start": {
                                    "line": 495,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 495,
                                    "column": 76
                                  }
                                },
                                "object": {
                                  "type": "CallExpression",
                                  "start": 19516,
                                  "end": 19570,
                                  "loc": {
                                    "start": {
                                      "line": 495,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 495,
                                      "column": 66
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 19516,
                                    "end": 19543,
                                    "loc": {
                                      "start": {
                                        "line": 495,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 495,
                                        "column": 39
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 19516,
                                      "end": 19539,
                                      "loc": {
                                        "start": {
                                          "line": 495,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 495,
                                          "column": 35
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 19516,
                                        "end": 19530,
                                        "loc": {
                                          "start": {
                                            "line": 495,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 495,
                                            "column": 26
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 19516,
                                          "end": 19527,
                                          "loc": {
                                            "start": {
                                              "line": 495,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 495,
                                              "column": 23
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 19516,
                                            "end": 19520,
                                            "loc": {
                                              "start": {
                                                "line": 495,
                                                "column": 12
                                              },
                                              "end": {
                                                "line": 495,
                                                "column": 16
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 19521,
                                            "end": 19527,
                                            "loc": {
                                              "start": {
                                                "line": 495,
                                                "column": 17
                                              },
                                              "end": {
                                                "line": 495,
                                                "column": 23
                                              }
                                            },
                                            "name": "points"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Literal",
                                          "start": 19528,
                                          "end": 19529,
                                          "loc": {
                                            "start": {
                                              "line": 495,
                                              "column": 24
                                            },
                                            "end": {
                                              "line": 495,
                                              "column": 25
                                            }
                                          },
                                          "value": 1,
                                          "rawValue": 1,
                                          "raw": "1"
                                        },
                                        "computed": true
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 19531,
                                        "end": 19539,
                                        "loc": {
                                          "start": {
                                            "line": 495,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 495,
                                            "column": 35
                                          }
                                        },
                                        "name": "position"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 19540,
                                      "end": 19543,
                                      "loc": {
                                        "start": {
                                          "line": 495,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 495,
                                          "column": 39
                                        }
                                      },
                                      "name": "sub"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "MemberExpression",
                                      "start": 19544,
                                      "end": 19569,
                                      "loc": {
                                        "start": {
                                          "line": 495,
                                          "column": 40
                                        },
                                        "end": {
                                          "line": 495,
                                          "column": 65
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 19544,
                                        "end": 19560,
                                        "loc": {
                                          "start": {
                                            "line": 495,
                                            "column": 40
                                          },
                                          "end": {
                                            "line": 495,
                                            "column": 56
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 19544,
                                          "end": 19548,
                                          "loc": {
                                            "start": {
                                              "line": 495,
                                              "column": 40
                                            },
                                            "end": {
                                              "line": 495,
                                              "column": 44
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 19549,
                                          "end": 19560,
                                          "loc": {
                                            "start": {
                                              "line": 495,
                                              "column": 45
                                            },
                                            "end": {
                                              "line": 495,
                                              "column": 56
                                            }
                                          },
                                          "name": "centerPoint"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 19561,
                                        "end": 19569,
                                        "loc": {
                                          "start": {
                                            "line": 495,
                                            "column": 57
                                          },
                                          "end": {
                                            "line": 495,
                                            "column": 65
                                          }
                                        },
                                        "name": "position"
                                      },
                                      "computed": false
                                    }
                                  ]
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 19571,
                                  "end": 19580,
                                  "loc": {
                                    "start": {
                                      "line": 495,
                                      "column": 67
                                    },
                                    "end": {
                                      "line": 495,
                                      "column": 76
                                    }
                                  },
                                  "name": "setLength"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 19581,
                                  "end": 19592,
                                  "loc": {
                                    "start": {
                                      "line": 495,
                                      "column": 77
                                    },
                                    "end": {
                                      "line": 495,
                                      "column": 88
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 19581,
                                    "end": 19585,
                                    "loc": {
                                      "start": {
                                        "line": 495,
                                        "column": 77
                                      },
                                      "end": {
                                        "line": 495,
                                        "column": 81
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 19586,
                                    "end": 19592,
                                    "loc": {
                                      "start": {
                                        "line": 495,
                                        "column": 82
                                      },
                                      "end": {
                                        "line": 495,
                                        "column": 88
                                      }
                                    },
                                    "name": "radius"
                                  },
                                  "computed": false
                                }
                              ]
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 19594,
                              "end": 19597,
                              "loc": {
                                "start": {
                                  "line": 495,
                                  "column": 90
                                },
                                "end": {
                                  "line": 495,
                                  "column": 93
                                }
                              },
                              "name": "add"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "MemberExpression",
                              "start": 19598,
                              "end": 19623,
                              "loc": {
                                "start": {
                                  "line": 495,
                                  "column": 94
                                },
                                "end": {
                                  "line": 495,
                                  "column": 119
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 19598,
                                "end": 19614,
                                "loc": {
                                  "start": {
                                    "line": 495,
                                    "column": 94
                                  },
                                  "end": {
                                    "line": 495,
                                    "column": 110
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 19598,
                                  "end": 19602,
                                  "loc": {
                                    "start": {
                                      "line": 495,
                                      "column": 94
                                    },
                                    "end": {
                                      "line": 495,
                                      "column": 98
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 19603,
                                  "end": 19614,
                                  "loc": {
                                    "start": {
                                      "line": 495,
                                      "column": 99
                                    },
                                    "end": {
                                      "line": 495,
                                      "column": 110
                                    }
                                  },
                                  "name": "centerPoint"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 19615,
                                "end": 19623,
                                "loc": {
                                  "start": {
                                    "line": 495,
                                    "column": 111
                                  },
                                  "end": {
                                    "line": 495,
                                    "column": 119
                                  }
                                },
                                "name": "position"
                              },
                              "computed": false
                            }
                          ]
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 19637,
                      "end": 19717,
                      "loc": {
                        "start": {
                          "line": 497,
                          "column": 8
                        },
                        "end": {
                          "line": 497,
                          "column": 88
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 19641,
                          "end": 19716,
                          "loc": {
                            "start": {
                              "line": 497,
                              "column": 12
                            },
                            "end": {
                              "line": 497,
                              "column": 87
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 19641,
                            "end": 19651,
                            "loc": {
                              "start": {
                                "line": 497,
                                "column": 12
                              },
                              "end": {
                                "line": 497,
                                "column": 22
                              }
                            },
                            "name": "center0Dir"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 19654,
                            "end": 19716,
                            "loc": {
                              "start": {
                                "line": 497,
                                "column": 25
                              },
                              "end": {
                                "line": 497,
                                "column": 87
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 19654,
                              "end": 19689,
                              "loc": {
                                "start": {
                                  "line": 497,
                                  "column": 25
                                },
                                "end": {
                                  "line": 497,
                                  "column": 60
                                }
                              },
                              "object": {
                                "type": "CallExpression",
                                "start": 19654,
                                "end": 19685,
                                "loc": {
                                  "start": {
                                    "line": 497,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 497,
                                    "column": 56
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 19654,
                                  "end": 19683,
                                  "loc": {
                                    "start": {
                                      "line": 497,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 497,
                                      "column": 54
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 19654,
                                    "end": 19677,
                                    "loc": {
                                      "start": {
                                        "line": 497,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 497,
                                        "column": 48
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 19654,
                                      "end": 19668,
                                      "loc": {
                                        "start": {
                                          "line": 497,
                                          "column": 25
                                        },
                                        "end": {
                                          "line": 497,
                                          "column": 39
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 19654,
                                        "end": 19665,
                                        "loc": {
                                          "start": {
                                            "line": 497,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 497,
                                            "column": 36
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 19654,
                                          "end": 19658,
                                          "loc": {
                                            "start": {
                                              "line": 497,
                                              "column": 25
                                            },
                                            "end": {
                                              "line": 497,
                                              "column": 29
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 19659,
                                          "end": 19665,
                                          "loc": {
                                            "start": {
                                              "line": 497,
                                              "column": 30
                                            },
                                            "end": {
                                              "line": 497,
                                              "column": 36
                                            }
                                          },
                                          "name": "points"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Literal",
                                        "start": 19666,
                                        "end": 19667,
                                        "loc": {
                                          "start": {
                                            "line": 497,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 497,
                                            "column": 38
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      "computed": true
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 19669,
                                      "end": 19677,
                                      "loc": {
                                        "start": {
                                          "line": 497,
                                          "column": 40
                                        },
                                        "end": {
                                          "line": 497,
                                          "column": 48
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 19678,
                                    "end": 19683,
                                    "loc": {
                                      "start": {
                                        "line": 497,
                                        "column": 49
                                      },
                                      "end": {
                                        "line": 497,
                                        "column": 54
                                      }
                                    },
                                    "name": "clone"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 19686,
                                "end": 19689,
                                "loc": {
                                  "start": {
                                    "line": 497,
                                    "column": 57
                                  },
                                  "end": {
                                    "line": 497,
                                    "column": 60
                                  }
                                },
                                "name": "sub"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 19690,
                                "end": 19715,
                                "loc": {
                                  "start": {
                                    "line": 497,
                                    "column": 61
                                  },
                                  "end": {
                                    "line": 497,
                                    "column": 86
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 19690,
                                  "end": 19706,
                                  "loc": {
                                    "start": {
                                      "line": 497,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 497,
                                      "column": 77
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 19690,
                                    "end": 19694,
                                    "loc": {
                                      "start": {
                                        "line": 497,
                                        "column": 61
                                      },
                                      "end": {
                                        "line": 497,
                                        "column": 65
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 19695,
                                    "end": 19706,
                                    "loc": {
                                      "start": {
                                        "line": 497,
                                        "column": 66
                                      },
                                      "end": {
                                        "line": 497,
                                        "column": 77
                                      }
                                    },
                                    "name": "centerPoint"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 19707,
                                  "end": 19715,
                                  "loc": {
                                    "start": {
                                      "line": 497,
                                      "column": 78
                                    },
                                    "end": {
                                      "line": 497,
                                      "column": 86
                                    }
                                  },
                                  "name": "position"
                                },
                                "computed": false
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 19727,
                      "end": 19807,
                      "loc": {
                        "start": {
                          "line": 498,
                          "column": 8
                        },
                        "end": {
                          "line": 498,
                          "column": 88
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 19731,
                          "end": 19806,
                          "loc": {
                            "start": {
                              "line": 498,
                              "column": 12
                            },
                            "end": {
                              "line": 498,
                              "column": 87
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 19731,
                            "end": 19741,
                            "loc": {
                              "start": {
                                "line": 498,
                                "column": 12
                              },
                              "end": {
                                "line": 498,
                                "column": 22
                              }
                            },
                            "name": "center1Dir"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 19744,
                            "end": 19806,
                            "loc": {
                              "start": {
                                "line": 498,
                                "column": 25
                              },
                              "end": {
                                "line": 498,
                                "column": 87
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 19744,
                              "end": 19779,
                              "loc": {
                                "start": {
                                  "line": 498,
                                  "column": 25
                                },
                                "end": {
                                  "line": 498,
                                  "column": 60
                                }
                              },
                              "object": {
                                "type": "CallExpression",
                                "start": 19744,
                                "end": 19775,
                                "loc": {
                                  "start": {
                                    "line": 498,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 498,
                                    "column": 56
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 19744,
                                  "end": 19773,
                                  "loc": {
                                    "start": {
                                      "line": 498,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 498,
                                      "column": 54
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 19744,
                                    "end": 19767,
                                    "loc": {
                                      "start": {
                                        "line": 498,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 498,
                                        "column": 48
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 19744,
                                      "end": 19758,
                                      "loc": {
                                        "start": {
                                          "line": 498,
                                          "column": 25
                                        },
                                        "end": {
                                          "line": 498,
                                          "column": 39
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 19744,
                                        "end": 19755,
                                        "loc": {
                                          "start": {
                                            "line": 498,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 498,
                                            "column": 36
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 19744,
                                          "end": 19748,
                                          "loc": {
                                            "start": {
                                              "line": 498,
                                              "column": 25
                                            },
                                            "end": {
                                              "line": 498,
                                              "column": 29
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 19749,
                                          "end": 19755,
                                          "loc": {
                                            "start": {
                                              "line": 498,
                                              "column": 30
                                            },
                                            "end": {
                                              "line": 498,
                                              "column": 36
                                            }
                                          },
                                          "name": "points"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Literal",
                                        "start": 19756,
                                        "end": 19757,
                                        "loc": {
                                          "start": {
                                            "line": 498,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 498,
                                            "column": 38
                                          }
                                        },
                                        "value": 1,
                                        "rawValue": 1,
                                        "raw": "1"
                                      },
                                      "computed": true
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 19759,
                                      "end": 19767,
                                      "loc": {
                                        "start": {
                                          "line": 498,
                                          "column": 40
                                        },
                                        "end": {
                                          "line": 498,
                                          "column": 48
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 19768,
                                    "end": 19773,
                                    "loc": {
                                      "start": {
                                        "line": 498,
                                        "column": 49
                                      },
                                      "end": {
                                        "line": 498,
                                        "column": 54
                                      }
                                    },
                                    "name": "clone"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 19776,
                                "end": 19779,
                                "loc": {
                                  "start": {
                                    "line": 498,
                                    "column": 57
                                  },
                                  "end": {
                                    "line": 498,
                                    "column": 60
                                  }
                                },
                                "name": "sub"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 19780,
                                "end": 19805,
                                "loc": {
                                  "start": {
                                    "line": 498,
                                    "column": 61
                                  },
                                  "end": {
                                    "line": 498,
                                    "column": 86
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 19780,
                                  "end": 19796,
                                  "loc": {
                                    "start": {
                                      "line": 498,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 498,
                                      "column": 77
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 19780,
                                    "end": 19784,
                                    "loc": {
                                      "start": {
                                        "line": 498,
                                        "column": 61
                                      },
                                      "end": {
                                        "line": 498,
                                        "column": 65
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 19785,
                                    "end": 19796,
                                    "loc": {
                                      "start": {
                                        "line": 498,
                                        "column": 66
                                      },
                                      "end": {
                                        "line": 498,
                                        "column": 77
                                      }
                                    },
                                    "name": "centerPoint"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 19797,
                                  "end": 19805,
                                  "loc": {
                                    "start": {
                                      "line": 498,
                                      "column": 78
                                    },
                                    "end": {
                                      "line": 498,
                                      "column": 86
                                    }
                                  },
                                  "name": "position"
                                },
                                "computed": false
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 19817,
                      "end": 19874,
                      "loc": {
                        "start": {
                          "line": 499,
                          "column": 8
                        },
                        "end": {
                          "line": 499,
                          "column": 65
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 19817,
                        "end": 19873,
                        "loc": {
                          "start": {
                            "line": 499,
                            "column": 8
                          },
                          "end": {
                            "line": 499,
                            "column": 64
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 19817,
                          "end": 19832,
                          "loc": {
                            "start": {
                              "line": 499,
                              "column": 8
                            },
                            "end": {
                              "line": 499,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 19817,
                            "end": 19821,
                            "loc": {
                              "start": {
                                "line": 499,
                                "column": 8
                              },
                              "end": {
                                "line": 499,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 19822,
                            "end": 19832,
                            "loc": {
                              "start": {
                                "line": 499,
                                "column": 13
                              },
                              "end": {
                                "line": 499,
                                "column": 23
                              }
                            },
                            "name": "angleStart"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "CallExpression",
                          "start": 19835,
                          "end": 19873,
                          "loc": {
                            "start": {
                              "line": 499,
                              "column": 26
                            },
                            "end": {
                              "line": 499,
                              "column": 64
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 19835,
                            "end": 19845,
                            "loc": {
                              "start": {
                                "line": 499,
                                "column": 26
                              },
                              "end": {
                                "line": 499,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 19835,
                              "end": 19839,
                              "loc": {
                                "start": {
                                  "line": 499,
                                  "column": 26
                                },
                                "end": {
                                  "line": 499,
                                  "column": 30
                                }
                              },
                              "name": "Math"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 19840,
                              "end": 19845,
                              "loc": {
                                "start": {
                                  "line": 499,
                                  "column": 31
                                },
                                "end": {
                                  "line": 499,
                                  "column": 36
                                }
                              },
                              "name": "atan2"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "MemberExpression",
                              "start": 19846,
                              "end": 19858,
                              "loc": {
                                "start": {
                                  "line": 499,
                                  "column": 37
                                },
                                "end": {
                                  "line": 499,
                                  "column": 49
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 19846,
                                "end": 19856,
                                "loc": {
                                  "start": {
                                    "line": 499,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 499,
                                    "column": 47
                                  }
                                },
                                "name": "center0Dir"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 19857,
                                "end": 19858,
                                "loc": {
                                  "start": {
                                    "line": 499,
                                    "column": 48
                                  },
                                  "end": {
                                    "line": 499,
                                    "column": 49
                                  }
                                },
                                "name": "y"
                              },
                              "computed": false
                            },
                            {
                              "type": "MemberExpression",
                              "start": 19860,
                              "end": 19872,
                              "loc": {
                                "start": {
                                  "line": 499,
                                  "column": 51
                                },
                                "end": {
                                  "line": 499,
                                  "column": 63
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 19860,
                                "end": 19870,
                                "loc": {
                                  "start": {
                                    "line": 499,
                                    "column": 51
                                  },
                                  "end": {
                                    "line": 499,
                                    "column": 61
                                  }
                                },
                                "name": "center0Dir"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 19871,
                                "end": 19872,
                                "loc": {
                                  "start": {
                                    "line": 499,
                                    "column": 62
                                  },
                                  "end": {
                                    "line": 499,
                                    "column": 63
                                  }
                                },
                                "name": "x"
                              },
                              "computed": false
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 19884,
                      "end": 19939,
                      "loc": {
                        "start": {
                          "line": 500,
                          "column": 8
                        },
                        "end": {
                          "line": 500,
                          "column": 63
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 19884,
                        "end": 19938,
                        "loc": {
                          "start": {
                            "line": 500,
                            "column": 8
                          },
                          "end": {
                            "line": 500,
                            "column": 62
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 19884,
                          "end": 19897,
                          "loc": {
                            "start": {
                              "line": 500,
                              "column": 8
                            },
                            "end": {
                              "line": 500,
                              "column": 21
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 19884,
                            "end": 19888,
                            "loc": {
                              "start": {
                                "line": 500,
                                "column": 8
                              },
                              "end": {
                                "line": 500,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 19889,
                            "end": 19897,
                            "loc": {
                              "start": {
                                "line": 500,
                                "column": 13
                              },
                              "end": {
                                "line": 500,
                                "column": 21
                              }
                            },
                            "name": "angleEnd"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "CallExpression",
                          "start": 19900,
                          "end": 19938,
                          "loc": {
                            "start": {
                              "line": 500,
                              "column": 24
                            },
                            "end": {
                              "line": 500,
                              "column": 62
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 19900,
                            "end": 19910,
                            "loc": {
                              "start": {
                                "line": 500,
                                "column": 24
                              },
                              "end": {
                                "line": 500,
                                "column": 34
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 19900,
                              "end": 19904,
                              "loc": {
                                "start": {
                                  "line": 500,
                                  "column": 24
                                },
                                "end": {
                                  "line": 500,
                                  "column": 28
                                }
                              },
                              "name": "Math"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 19905,
                              "end": 19910,
                              "loc": {
                                "start": {
                                  "line": 500,
                                  "column": 29
                                },
                                "end": {
                                  "line": 500,
                                  "column": 34
                                }
                              },
                              "name": "atan2"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "MemberExpression",
                              "start": 19911,
                              "end": 19923,
                              "loc": {
                                "start": {
                                  "line": 500,
                                  "column": 35
                                },
                                "end": {
                                  "line": 500,
                                  "column": 47
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 19911,
                                "end": 19921,
                                "loc": {
                                  "start": {
                                    "line": 500,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 500,
                                    "column": 45
                                  }
                                },
                                "name": "center1Dir"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 19922,
                                "end": 19923,
                                "loc": {
                                  "start": {
                                    "line": 500,
                                    "column": 46
                                  },
                                  "end": {
                                    "line": 500,
                                    "column": 47
                                  }
                                },
                                "name": "y"
                              },
                              "computed": false
                            },
                            {
                              "type": "MemberExpression",
                              "start": 19925,
                              "end": 19937,
                              "loc": {
                                "start": {
                                  "line": 500,
                                  "column": 49
                                },
                                "end": {
                                  "line": 500,
                                  "column": 61
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 19925,
                                "end": 19935,
                                "loc": {
                                  "start": {
                                    "line": 500,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 500,
                                    "column": 59
                                  }
                                },
                                "name": "center1Dir"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 19936,
                                "end": 19937,
                                "loc": {
                                  "start": {
                                    "line": 500,
                                    "column": 60
                                  },
                                  "end": {
                                    "line": 500,
                                    "column": 61
                                  }
                                },
                                "name": "x"
                              },
                              "computed": false
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "IfStatement",
                      "start": 19949,
                      "end": 20195,
                      "loc": {
                        "start": {
                          "line": 501,
                          "column": 8
                        },
                        "end": {
                          "line": 507,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "MemberExpression",
                        "start": 19953,
                        "end": 19967,
                        "loc": {
                          "start": {
                            "line": 501,
                            "column": 12
                          },
                          "end": {
                            "line": 501,
                            "column": 26
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 19953,
                          "end": 19957,
                          "loc": {
                            "start": {
                              "line": 501,
                              "column": 12
                            },
                            "end": {
                              "line": 501,
                              "column": 16
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 19958,
                          "end": 19967,
                          "loc": {
                            "start": {
                              "line": 501,
                              "column": 17
                            },
                            "end": {
                              "line": 501,
                              "column": 26
                            }
                          },
                          "name": "clockwise"
                        },
                        "computed": false
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 19969,
                        "end": 20080,
                        "loc": {
                          "start": {
                            "line": 501,
                            "column": 28
                          },
                          "end": {
                            "line": 504,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "IfStatement",
                            "start": 19984,
                            "end": 20069,
                            "loc": {
                              "start": {
                                "line": 502,
                                "column": 12
                              },
                              "end": {
                                "line": 503,
                                "column": 47
                              }
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 19988,
                              "end": 20019,
                              "loc": {
                                "start": {
                                  "line": 502,
                                  "column": 16
                                },
                                "end": {
                                  "line": 502,
                                  "column": 47
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 19988,
                                "end": 20003,
                                "loc": {
                                  "start": {
                                    "line": 502,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 502,
                                    "column": 31
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 19988,
                                  "end": 19992,
                                  "loc": {
                                    "start": {
                                      "line": 502,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 502,
                                      "column": 20
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 19993,
                                  "end": 20003,
                                  "loc": {
                                    "start": {
                                      "line": 502,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 502,
                                      "column": 31
                                    }
                                  },
                                  "name": "angleStart"
                                },
                                "computed": false
                              },
                              "operator": "<",
                              "right": {
                                "type": "MemberExpression",
                                "start": 20006,
                                "end": 20019,
                                "loc": {
                                  "start": {
                                    "line": 502,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 502,
                                    "column": 47
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 20006,
                                  "end": 20010,
                                  "loc": {
                                    "start": {
                                      "line": 502,
                                      "column": 34
                                    },
                                    "end": {
                                      "line": 502,
                                      "column": 38
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 20011,
                                  "end": 20019,
                                  "loc": {
                                    "start": {
                                      "line": 502,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 502,
                                      "column": 47
                                    }
                                  },
                                  "name": "angleEnd"
                                },
                                "computed": false
                              }
                            },
                            "consequent": {
                              "type": "ExpressionStatement",
                              "start": 20038,
                              "end": 20069,
                              "loc": {
                                "start": {
                                  "line": 503,
                                  "column": 16
                                },
                                "end": {
                                  "line": 503,
                                  "column": 47
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 20038,
                                "end": 20068,
                                "loc": {
                                  "start": {
                                    "line": 503,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 503,
                                    "column": 46
                                  }
                                },
                                "operator": "+=",
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 20038,
                                  "end": 20053,
                                  "loc": {
                                    "start": {
                                      "line": 503,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 503,
                                      "column": 31
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 20038,
                                    "end": 20042,
                                    "loc": {
                                      "start": {
                                        "line": 503,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 503,
                                        "column": 20
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 20043,
                                    "end": 20053,
                                    "loc": {
                                      "start": {
                                        "line": 503,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 503,
                                        "column": 31
                                      }
                                    },
                                    "name": "angleStart"
                                  },
                                  "computed": false
                                },
                                "right": {
                                  "type": "BinaryExpression",
                                  "start": 20057,
                                  "end": 20068,
                                  "loc": {
                                    "start": {
                                      "line": 503,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 503,
                                      "column": 46
                                    }
                                  },
                                  "left": {
                                    "type": "Literal",
                                    "start": 20057,
                                    "end": 20058,
                                    "loc": {
                                      "start": {
                                        "line": 503,
                                        "column": 35
                                      },
                                      "end": {
                                        "line": 503,
                                        "column": 36
                                      }
                                    },
                                    "value": 2,
                                    "rawValue": 2,
                                    "raw": "2"
                                  },
                                  "operator": "*",
                                  "right": {
                                    "type": "MemberExpression",
                                    "start": 20061,
                                    "end": 20068,
                                    "loc": {
                                      "start": {
                                        "line": 503,
                                        "column": 39
                                      },
                                      "end": {
                                        "line": 503,
                                        "column": 46
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 20061,
                                      "end": 20065,
                                      "loc": {
                                        "start": {
                                          "line": 503,
                                          "column": 39
                                        },
                                        "end": {
                                          "line": 503,
                                          "column": 43
                                        }
                                      },
                                      "name": "Math"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 20066,
                                      "end": 20068,
                                      "loc": {
                                        "start": {
                                          "line": 503,
                                          "column": 44
                                        },
                                        "end": {
                                          "line": 503,
                                          "column": 46
                                        }
                                      },
                                      "name": "PI"
                                    },
                                    "computed": false
                                  }
                                }
                              }
                            },
                            "alternate": null
                          }
                        ]
                      },
                      "alternate": {
                        "type": "BlockStatement",
                        "start": 20086,
                        "end": 20195,
                        "loc": {
                          "start": {
                            "line": 504,
                            "column": 15
                          },
                          "end": {
                            "line": 507,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "IfStatement",
                            "start": 20101,
                            "end": 20184,
                            "loc": {
                              "start": {
                                "line": 505,
                                "column": 12
                              },
                              "end": {
                                "line": 506,
                                "column": 45
                              }
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 20105,
                              "end": 20136,
                              "loc": {
                                "start": {
                                  "line": 505,
                                  "column": 16
                                },
                                "end": {
                                  "line": 505,
                                  "column": 47
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 20105,
                                "end": 20120,
                                "loc": {
                                  "start": {
                                    "line": 505,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 505,
                                    "column": 31
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 20105,
                                  "end": 20109,
                                  "loc": {
                                    "start": {
                                      "line": 505,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 505,
                                      "column": 20
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 20110,
                                  "end": 20120,
                                  "loc": {
                                    "start": {
                                      "line": 505,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 505,
                                      "column": 31
                                    }
                                  },
                                  "name": "angleStart"
                                },
                                "computed": false
                              },
                              "operator": ">",
                              "right": {
                                "type": "MemberExpression",
                                "start": 20123,
                                "end": 20136,
                                "loc": {
                                  "start": {
                                    "line": 505,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 505,
                                    "column": 47
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 20123,
                                  "end": 20127,
                                  "loc": {
                                    "start": {
                                      "line": 505,
                                      "column": 34
                                    },
                                    "end": {
                                      "line": 505,
                                      "column": 38
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 20128,
                                  "end": 20136,
                                  "loc": {
                                    "start": {
                                      "line": 505,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 505,
                                      "column": 47
                                    }
                                  },
                                  "name": "angleEnd"
                                },
                                "computed": false
                              }
                            },
                            "consequent": {
                              "type": "ExpressionStatement",
                              "start": 20155,
                              "end": 20184,
                              "loc": {
                                "start": {
                                  "line": 506,
                                  "column": 16
                                },
                                "end": {
                                  "line": 506,
                                  "column": 45
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 20155,
                                "end": 20183,
                                "loc": {
                                  "start": {
                                    "line": 506,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 506,
                                    "column": 44
                                  }
                                },
                                "operator": "+=",
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 20155,
                                  "end": 20168,
                                  "loc": {
                                    "start": {
                                      "line": 506,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 506,
                                      "column": 29
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 20155,
                                    "end": 20159,
                                    "loc": {
                                      "start": {
                                        "line": 506,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 506,
                                        "column": 20
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 20160,
                                    "end": 20168,
                                    "loc": {
                                      "start": {
                                        "line": 506,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 506,
                                        "column": 29
                                      }
                                    },
                                    "name": "angleEnd"
                                  },
                                  "computed": false
                                },
                                "right": {
                                  "type": "BinaryExpression",
                                  "start": 20172,
                                  "end": 20183,
                                  "loc": {
                                    "start": {
                                      "line": 506,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 506,
                                      "column": 44
                                    }
                                  },
                                  "left": {
                                    "type": "Literal",
                                    "start": 20172,
                                    "end": 20173,
                                    "loc": {
                                      "start": {
                                        "line": 506,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 506,
                                        "column": 34
                                      }
                                    },
                                    "value": 2,
                                    "rawValue": 2,
                                    "raw": "2"
                                  },
                                  "operator": "*",
                                  "right": {
                                    "type": "MemberExpression",
                                    "start": 20176,
                                    "end": 20183,
                                    "loc": {
                                      "start": {
                                        "line": 506,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 506,
                                        "column": 44
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 20176,
                                      "end": 20180,
                                      "loc": {
                                        "start": {
                                          "line": 506,
                                          "column": 37
                                        },
                                        "end": {
                                          "line": 506,
                                          "column": 41
                                        }
                                      },
                                      "name": "Math"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 20181,
                                      "end": 20183,
                                      "loc": {
                                        "start": {
                                          "line": 506,
                                          "column": 42
                                        },
                                        "end": {
                                          "line": 506,
                                          "column": 44
                                        }
                                      },
                                      "name": "PI"
                                    },
                                    "computed": false
                                  }
                                }
                              }
                            },
                            "alternate": null
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 20210,
              "end": 20334,
              "loc": {
                "start": {
                  "line": 510,
                  "column": 4
                },
                "end": {
                  "line": 513,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 20210,
                "end": 20230,
                "loc": {
                  "start": {
                    "line": 510,
                    "column": 4
                  },
                  "end": {
                    "line": 510,
                    "column": 24
                  }
                },
                "name": "getAuxiliaryGeometry"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 20230,
                "end": 20334,
                "loc": {
                  "start": {
                    "line": 510,
                    "column": 24
                  },
                  "end": {
                    "line": 513,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 20233,
                  "end": 20334,
                  "loc": {
                    "start": {
                      "line": 510,
                      "column": 27
                    },
                    "end": {
                      "line": 513,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 20244,
                      "end": 20301,
                      "loc": {
                        "start": {
                          "line": 511,
                          "column": 8
                        },
                        "end": {
                          "line": 511,
                          "column": 65
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 20248,
                          "end": 20300,
                          "loc": {
                            "start": {
                              "line": 511,
                              "column": 12
                            },
                            "end": {
                              "line": 511,
                              "column": 64
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 20248,
                            "end": 20256,
                            "loc": {
                              "start": {
                                "line": 511,
                                "column": 12
                              },
                              "end": {
                                "line": 511,
                                "column": 20
                              }
                            },
                            "name": "geometry"
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 20259,
                            "end": 20300,
                            "loc": {
                              "start": {
                                "line": 511,
                                "column": 23
                              },
                              "end": {
                                "line": 511,
                                "column": 64
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 20263,
                              "end": 20283,
                              "loc": {
                                "start": {
                                  "line": 511,
                                  "column": 27
                                },
                                "end": {
                                  "line": 511,
                                  "column": 47
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 20263,
                                "end": 20268,
                                "loc": {
                                  "start": {
                                    "line": 511,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 511,
                                    "column": 32
                                  }
                                },
                                "name": "THREE"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 20269,
                                "end": 20283,
                                "loc": {
                                  "start": {
                                    "line": 511,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 511,
                                    "column": 47
                                  }
                                },
                                "name": "CircleGeometry"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 20284,
                                "end": 20295,
                                "loc": {
                                  "start": {
                                    "line": 511,
                                    "column": 48
                                  },
                                  "end": {
                                    "line": 511,
                                    "column": 59
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 20284,
                                  "end": 20288,
                                  "loc": {
                                    "start": {
                                      "line": 511,
                                      "column": 48
                                    },
                                    "end": {
                                      "line": 511,
                                      "column": 52
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 20289,
                                  "end": 20295,
                                  "loc": {
                                    "start": {
                                      "line": 511,
                                      "column": 53
                                    },
                                    "end": {
                                      "line": 511,
                                      "column": 59
                                    }
                                  },
                                  "name": "radius"
                                },
                                "computed": false
                              },
                              {
                                "type": "Literal",
                                "start": 20297,
                                "end": 20299,
                                "loc": {
                                  "start": {
                                    "line": 511,
                                    "column": 61
                                  },
                                  "end": {
                                    "line": 511,
                                    "column": 63
                                  }
                                },
                                "value": 32,
                                "rawValue": 32,
                                "raw": "32"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 20311,
                      "end": 20327,
                      "loc": {
                        "start": {
                          "line": 512,
                          "column": 8
                        },
                        "end": {
                          "line": 512,
                          "column": 24
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 20318,
                        "end": 20326,
                        "loc": {
                          "start": {
                            "line": 512,
                            "column": 15
                          },
                          "end": {
                            "line": 512,
                            "column": 23
                          }
                        },
                        "name": "geometry"
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 20342,
              "end": 20874,
              "loc": {
                "start": {
                  "line": 515,
                  "column": 4
                },
                "end": {
                  "line": 526,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 20342,
                "end": 20365,
                "loc": {
                  "start": {
                    "line": 515,
                    "column": 4
                  },
                  "end": {
                    "line": 515,
                    "column": 27
                  }
                },
                "name": "updateAuxiliaryGeometry"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 20365,
                "end": 20874,
                "loc": {
                  "start": {
                    "line": 515,
                    "column": 27
                  },
                  "end": {
                    "line": 526,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 20368,
                  "end": 20874,
                  "loc": {
                    "start": {
                      "line": 515,
                      "column": 30
                    },
                    "end": {
                      "line": 526,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 20379,
                      "end": 20430,
                      "loc": {
                        "start": {
                          "line": 516,
                          "column": 8
                        },
                        "end": {
                          "line": 516,
                          "column": 59
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 20383,
                          "end": 20429,
                          "loc": {
                            "start": {
                              "line": 516,
                              "column": 12
                            },
                            "end": {
                              "line": 516,
                              "column": 58
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 20383,
                            "end": 20391,
                            "loc": {
                              "start": {
                                "line": 516,
                                "column": 12
                              },
                              "end": {
                                "line": 516,
                                "column": 20
                              }
                            },
                            "name": "geometry"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 20394,
                            "end": 20429,
                            "loc": {
                              "start": {
                                "line": 516,
                                "column": 23
                              },
                              "end": {
                                "line": 516,
                                "column": 58
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 20394,
                              "end": 20420,
                              "loc": {
                                "start": {
                                  "line": 516,
                                  "column": 23
                                },
                                "end": {
                                  "line": 516,
                                  "column": 49
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 20394,
                                "end": 20398,
                                "loc": {
                                  "start": {
                                    "line": 516,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 516,
                                    "column": 27
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 20399,
                                "end": 20420,
                                "loc": {
                                  "start": {
                                    "line": 516,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 516,
                                    "column": 49
                                  }
                                },
                                "name": "auxiliaryConstruction"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 20421,
                              "end": 20429,
                              "loc": {
                                "start": {
                                  "line": 516,
                                  "column": 50
                                },
                                "end": {
                                  "line": 516,
                                  "column": 58
                                }
                              },
                              "name": "geometry"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 20440,
                      "end": 20475,
                      "loc": {
                        "start": {
                          "line": 517,
                          "column": 8
                        },
                        "end": {
                          "line": 517,
                          "column": 43
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 20444,
                          "end": 20474,
                          "loc": {
                            "start": {
                              "line": 517,
                              "column": 12
                            },
                            "end": {
                              "line": 517,
                              "column": 42
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 20444,
                            "end": 20453,
                            "loc": {
                              "start": {
                                "line": 517,
                                "column": 12
                              },
                              "end": {
                                "line": 517,
                                "column": 21
                              }
                            },
                            "name": "stepAngle"
                          },
                          "init": {
                            "type": "BinaryExpression",
                            "start": 20456,
                            "end": 20474,
                            "loc": {
                              "start": {
                                "line": 517,
                                "column": 24
                              },
                              "end": {
                                "line": 517,
                                "column": 42
                              }
                            },
                            "left": {
                              "type": "BinaryExpression",
                              "start": 20457,
                              "end": 20468,
                              "loc": {
                                "start": {
                                  "line": 517,
                                  "column": 25
                                },
                                "end": {
                                  "line": 517,
                                  "column": 36
                                }
                              },
                              "left": {
                                "type": "Literal",
                                "start": 20457,
                                "end": 20458,
                                "loc": {
                                  "start": {
                                    "line": 517,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 517,
                                    "column": 26
                                  }
                                },
                                "value": 2,
                                "rawValue": 2,
                                "raw": "2"
                              },
                              "operator": "*",
                              "right": {
                                "type": "MemberExpression",
                                "start": 20461,
                                "end": 20468,
                                "loc": {
                                  "start": {
                                    "line": 517,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 517,
                                    "column": 36
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 20461,
                                  "end": 20465,
                                  "loc": {
                                    "start": {
                                      "line": 517,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 517,
                                      "column": 33
                                    }
                                  },
                                  "name": "Math"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 20466,
                                  "end": 20468,
                                  "loc": {
                                    "start": {
                                      "line": 517,
                                      "column": 34
                                    },
                                    "end": {
                                      "line": 517,
                                      "column": 36
                                    }
                                  },
                                  "name": "PI"
                                },
                                "computed": false
                              },
                              "parenthesizedExpression": true
                            },
                            "operator": "/",
                            "right": {
                              "type": "Literal",
                              "start": 20472,
                              "end": 20474,
                              "loc": {
                                "start": {
                                  "line": 517,
                                  "column": 40
                                },
                                "end": {
                                  "line": 517,
                                  "column": 42
                                }
                              },
                              "value": 32,
                              "rawValue": 32,
                              "raw": "32"
                            }
                          }
                        }
                      ],
                      "kind": "var",
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " circleGeometry segments = 32",
                          "start": 20476,
                          "end": 20507,
                          "loc": {
                            "start": {
                              "line": 517,
                              "column": 44
                            },
                            "end": {
                              "line": 517,
                              "column": 75
                            }
                          },
                          "range": [
                            20476,
                            20507
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ForStatement",
                      "start": 20519,
                      "end": 20745,
                      "loc": {
                        "start": {
                          "line": 519,
                          "column": 8
                        },
                        "end": {
                          "line": 522,
                          "column": 10
                        }
                      },
                      "init": {
                        "type": "VariableDeclaration",
                        "start": 20524,
                        "end": 20533,
                        "loc": {
                          "start": {
                            "line": 519,
                            "column": 13
                          },
                          "end": {
                            "line": 519,
                            "column": 22
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 20528,
                            "end": 20533,
                            "loc": {
                              "start": {
                                "line": 519,
                                "column": 17
                              },
                              "end": {
                                "line": 519,
                                "column": 22
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 20528,
                              "end": 20529,
                              "loc": {
                                "start": {
                                  "line": 519,
                                  "column": 17
                                },
                                "end": {
                                  "line": 519,
                                  "column": 18
                                }
                              },
                              "name": "i",
                              "leadingComments": null
                            },
                            "init": {
                              "type": "Literal",
                              "start": 20532,
                              "end": 20533,
                              "loc": {
                                "start": {
                                  "line": 519,
                                  "column": 21
                                },
                                "end": {
                                  "line": 519,
                                  "column": 22
                                }
                              },
                              "value": 1,
                              "rawValue": 1,
                              "raw": "1"
                            },
                            "leadingComments": null
                          }
                        ],
                        "kind": "var",
                        "leadingComments": null
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 20535,
                        "end": 20563,
                        "loc": {
                          "start": {
                            "line": 519,
                            "column": 24
                          },
                          "end": {
                            "line": 519,
                            "column": 52
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 20535,
                          "end": 20536,
                          "loc": {
                            "start": {
                              "line": 519,
                              "column": 24
                            },
                            "end": {
                              "line": 519,
                              "column": 25
                            }
                          },
                          "name": "i"
                        },
                        "operator": "<",
                        "right": {
                          "type": "MemberExpression",
                          "start": 20539,
                          "end": 20563,
                          "loc": {
                            "start": {
                              "line": 519,
                              "column": 28
                            },
                            "end": {
                              "line": 519,
                              "column": 52
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 20539,
                            "end": 20556,
                            "loc": {
                              "start": {
                                "line": 519,
                                "column": 28
                              },
                              "end": {
                                "line": 519,
                                "column": 45
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 20539,
                              "end": 20547,
                              "loc": {
                                "start": {
                                  "line": 519,
                                  "column": 28
                                },
                                "end": {
                                  "line": 519,
                                  "column": 36
                                }
                              },
                              "name": "geometry"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 20548,
                              "end": 20556,
                              "loc": {
                                "start": {
                                  "line": 519,
                                  "column": 37
                                },
                                "end": {
                                  "line": 519,
                                  "column": 45
                                }
                              },
                              "name": "vertices"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 20557,
                            "end": 20563,
                            "loc": {
                              "start": {
                                "line": 519,
                                "column": 46
                              },
                              "end": {
                                "line": 519,
                                "column": 52
                              }
                            },
                            "name": "length"
                          },
                          "computed": false
                        }
                      },
                      "update": {
                        "type": "UpdateExpression",
                        "start": 20565,
                        "end": 20568,
                        "loc": {
                          "start": {
                            "line": 519,
                            "column": 54
                          },
                          "end": {
                            "line": 519,
                            "column": 57
                          }
                        },
                        "operator": "++",
                        "prefix": true,
                        "argument": {
                          "type": "Identifier",
                          "start": 20567,
                          "end": 20568,
                          "loc": {
                            "start": {
                              "line": 519,
                              "column": 56
                            },
                            "end": {
                              "line": 519,
                              "column": 57
                            }
                          },
                          "name": "i"
                        }
                      },
                      "body": {
                        "type": "BlockStatement",
                        "start": 20570,
                        "end": 20745,
                        "loc": {
                          "start": {
                            "line": 519,
                            "column": 59
                          },
                          "end": {
                            "line": 522,
                            "column": 10
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 20585,
                            "end": 20652,
                            "loc": {
                              "start": {
                                "line": 520,
                                "column": 12
                              },
                              "end": {
                                "line": 520,
                                "column": 79
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 20585,
                              "end": 20651,
                              "loc": {
                                "start": {
                                  "line": 520,
                                  "column": 12
                                },
                                "end": {
                                  "line": 520,
                                  "column": 78
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 20585,
                                "end": 20607,
                                "loc": {
                                  "start": {
                                    "line": 520,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 520,
                                    "column": 34
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 20585,
                                  "end": 20605,
                                  "loc": {
                                    "start": {
                                      "line": 520,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 520,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 20585,
                                    "end": 20602,
                                    "loc": {
                                      "start": {
                                        "line": 520,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 520,
                                        "column": 29
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 20585,
                                      "end": 20593,
                                      "loc": {
                                        "start": {
                                          "line": 520,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 520,
                                          "column": 20
                                        }
                                      },
                                      "name": "geometry"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 20594,
                                      "end": 20602,
                                      "loc": {
                                        "start": {
                                          "line": 520,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 520,
                                          "column": 29
                                        }
                                      },
                                      "name": "vertices"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 20603,
                                    "end": 20604,
                                    "loc": {
                                      "start": {
                                        "line": 520,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 520,
                                        "column": 31
                                      }
                                    },
                                    "name": "i"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 20606,
                                  "end": 20607,
                                  "loc": {
                                    "start": {
                                      "line": 520,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 520,
                                      "column": 34
                                    }
                                  },
                                  "name": "x"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "BinaryExpression",
                                "start": 20610,
                                "end": 20651,
                                "loc": {
                                  "start": {
                                    "line": 520,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 520,
                                    "column": 78
                                  }
                                },
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 20610,
                                  "end": 20621,
                                  "loc": {
                                    "start": {
                                      "line": 520,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 520,
                                      "column": 48
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 20610,
                                    "end": 20614,
                                    "loc": {
                                      "start": {
                                        "line": 520,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 520,
                                        "column": 41
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 20615,
                                    "end": 20621,
                                    "loc": {
                                      "start": {
                                        "line": 520,
                                        "column": 42
                                      },
                                      "end": {
                                        "line": 520,
                                        "column": 48
                                      }
                                    },
                                    "name": "radius"
                                  },
                                  "computed": false
                                },
                                "operator": "*",
                                "right": {
                                  "type": "CallExpression",
                                  "start": 20624,
                                  "end": 20651,
                                  "loc": {
                                    "start": {
                                      "line": 520,
                                      "column": 51
                                    },
                                    "end": {
                                      "line": 520,
                                      "column": 78
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 20624,
                                    "end": 20632,
                                    "loc": {
                                      "start": {
                                        "line": 520,
                                        "column": 51
                                      },
                                      "end": {
                                        "line": 520,
                                        "column": 59
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 20624,
                                      "end": 20628,
                                      "loc": {
                                        "start": {
                                          "line": 520,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 520,
                                          "column": 55
                                        }
                                      },
                                      "name": "Math"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 20629,
                                      "end": 20632,
                                      "loc": {
                                        "start": {
                                          "line": 520,
                                          "column": 56
                                        },
                                        "end": {
                                          "line": 520,
                                          "column": 59
                                        }
                                      },
                                      "name": "cos"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "BinaryExpression",
                                      "start": 20633,
                                      "end": 20650,
                                      "loc": {
                                        "start": {
                                          "line": 520,
                                          "column": 60
                                        },
                                        "end": {
                                          "line": 520,
                                          "column": 77
                                        }
                                      },
                                      "left": {
                                        "type": "Identifier",
                                        "start": 20633,
                                        "end": 20642,
                                        "loc": {
                                          "start": {
                                            "line": 520,
                                            "column": 60
                                          },
                                          "end": {
                                            "line": 520,
                                            "column": 69
                                          }
                                        },
                                        "name": "stepAngle"
                                      },
                                      "operator": "*",
                                      "right": {
                                        "type": "BinaryExpression",
                                        "start": 20646,
                                        "end": 20649,
                                        "loc": {
                                          "start": {
                                            "line": 520,
                                            "column": 73
                                          },
                                          "end": {
                                            "line": 520,
                                            "column": 76
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 20646,
                                          "end": 20647,
                                          "loc": {
                                            "start": {
                                              "line": 520,
                                              "column": 73
                                            },
                                            "end": {
                                              "line": 520,
                                              "column": 74
                                            }
                                          },
                                          "name": "i"
                                        },
                                        "operator": "-",
                                        "right": {
                                          "type": "Literal",
                                          "start": 20648,
                                          "end": 20649,
                                          "loc": {
                                            "start": {
                                              "line": 520,
                                              "column": 75
                                            },
                                            "end": {
                                              "line": 520,
                                              "column": 76
                                            }
                                          },
                                          "value": 1,
                                          "rawValue": 1,
                                          "raw": "1"
                                        },
                                        "parenthesizedExpression": true
                                      }
                                    }
                                  ]
                                }
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 20666,
                            "end": 20733,
                            "loc": {
                              "start": {
                                "line": 521,
                                "column": 12
                              },
                              "end": {
                                "line": 521,
                                "column": 79
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 20666,
                              "end": 20732,
                              "loc": {
                                "start": {
                                  "line": 521,
                                  "column": 12
                                },
                                "end": {
                                  "line": 521,
                                  "column": 78
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 20666,
                                "end": 20688,
                                "loc": {
                                  "start": {
                                    "line": 521,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 521,
                                    "column": 34
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 20666,
                                  "end": 20686,
                                  "loc": {
                                    "start": {
                                      "line": 521,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 521,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 20666,
                                    "end": 20683,
                                    "loc": {
                                      "start": {
                                        "line": 521,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 521,
                                        "column": 29
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 20666,
                                      "end": 20674,
                                      "loc": {
                                        "start": {
                                          "line": 521,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 521,
                                          "column": 20
                                        }
                                      },
                                      "name": "geometry"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 20675,
                                      "end": 20683,
                                      "loc": {
                                        "start": {
                                          "line": 521,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 521,
                                          "column": 29
                                        }
                                      },
                                      "name": "vertices"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 20684,
                                    "end": 20685,
                                    "loc": {
                                      "start": {
                                        "line": 521,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 521,
                                        "column": 31
                                      }
                                    },
                                    "name": "i"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 20687,
                                  "end": 20688,
                                  "loc": {
                                    "start": {
                                      "line": 521,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 521,
                                      "column": 34
                                    }
                                  },
                                  "name": "y"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "BinaryExpression",
                                "start": 20691,
                                "end": 20732,
                                "loc": {
                                  "start": {
                                    "line": 521,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 521,
                                    "column": 78
                                  }
                                },
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 20691,
                                  "end": 20702,
                                  "loc": {
                                    "start": {
                                      "line": 521,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 521,
                                      "column": 48
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 20691,
                                    "end": 20695,
                                    "loc": {
                                      "start": {
                                        "line": 521,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 521,
                                        "column": 41
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 20696,
                                    "end": 20702,
                                    "loc": {
                                      "start": {
                                        "line": 521,
                                        "column": 42
                                      },
                                      "end": {
                                        "line": 521,
                                        "column": 48
                                      }
                                    },
                                    "name": "radius"
                                  },
                                  "computed": false
                                },
                                "operator": "*",
                                "right": {
                                  "type": "CallExpression",
                                  "start": 20705,
                                  "end": 20732,
                                  "loc": {
                                    "start": {
                                      "line": 521,
                                      "column": 51
                                    },
                                    "end": {
                                      "line": 521,
                                      "column": 78
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 20705,
                                    "end": 20713,
                                    "loc": {
                                      "start": {
                                        "line": 521,
                                        "column": 51
                                      },
                                      "end": {
                                        "line": 521,
                                        "column": 59
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 20705,
                                      "end": 20709,
                                      "loc": {
                                        "start": {
                                          "line": 521,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 521,
                                          "column": 55
                                        }
                                      },
                                      "name": "Math"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 20710,
                                      "end": 20713,
                                      "loc": {
                                        "start": {
                                          "line": 521,
                                          "column": 56
                                        },
                                        "end": {
                                          "line": 521,
                                          "column": 59
                                        }
                                      },
                                      "name": "sin"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "BinaryExpression",
                                      "start": 20714,
                                      "end": 20731,
                                      "loc": {
                                        "start": {
                                          "line": 521,
                                          "column": 60
                                        },
                                        "end": {
                                          "line": 521,
                                          "column": 77
                                        }
                                      },
                                      "left": {
                                        "type": "Identifier",
                                        "start": 20714,
                                        "end": 20723,
                                        "loc": {
                                          "start": {
                                            "line": 521,
                                            "column": 60
                                          },
                                          "end": {
                                            "line": 521,
                                            "column": 69
                                          }
                                        },
                                        "name": "stepAngle"
                                      },
                                      "operator": "*",
                                      "right": {
                                        "type": "BinaryExpression",
                                        "start": 20727,
                                        "end": 20730,
                                        "loc": {
                                          "start": {
                                            "line": 521,
                                            "column": 73
                                          },
                                          "end": {
                                            "line": 521,
                                            "column": 76
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 20727,
                                          "end": 20728,
                                          "loc": {
                                            "start": {
                                              "line": 521,
                                              "column": 73
                                            },
                                            "end": {
                                              "line": 521,
                                              "column": 74
                                            }
                                          },
                                          "name": "i"
                                        },
                                        "operator": "-",
                                        "right": {
                                          "type": "Literal",
                                          "start": 20729,
                                          "end": 20730,
                                          "loc": {
                                            "start": {
                                              "line": 521,
                                              "column": 75
                                            },
                                            "end": {
                                              "line": 521,
                                              "column": 76
                                            }
                                          },
                                          "value": 1,
                                          "rawValue": 1,
                                          "raw": "1"
                                        },
                                        "parenthesizedExpression": true
                                      }
                                    }
                                  ]
                                }
                              }
                            }
                          }
                        ]
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " circleGeometry segments = 32",
                          "start": 20476,
                          "end": 20507,
                          "loc": {
                            "start": {
                              "line": 517,
                              "column": 44
                            },
                            "end": {
                              "line": 517,
                              "column": 75
                            }
                          },
                          "range": [
                            20476,
                            20507
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 20755,
                      "end": 20820,
                      "loc": {
                        "start": {
                          "line": 523,
                          "column": 8
                        },
                        "end": {
                          "line": 523,
                          "column": 73
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 20755,
                        "end": 20819,
                        "loc": {
                          "start": {
                            "line": 523,
                            "column": 8
                          },
                          "end": {
                            "line": 523,
                            "column": 72
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 20755,
                          "end": 20795,
                          "loc": {
                            "start": {
                              "line": 523,
                              "column": 8
                            },
                            "end": {
                              "line": 523,
                              "column": 48
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 20755,
                            "end": 20790,
                            "loc": {
                              "start": {
                                "line": 523,
                                "column": 8
                              },
                              "end": {
                                "line": 523,
                                "column": 43
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 20755,
                              "end": 20781,
                              "loc": {
                                "start": {
                                  "line": 523,
                                  "column": 8
                                },
                                "end": {
                                  "line": 523,
                                  "column": 34
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 20755,
                                "end": 20759,
                                "loc": {
                                  "start": {
                                    "line": 523,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 523,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 20760,
                                "end": 20781,
                                "loc": {
                                  "start": {
                                    "line": 523,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 523,
                                    "column": 34
                                  }
                                },
                                "name": "auxiliaryConstruction"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 20782,
                              "end": 20790,
                              "loc": {
                                "start": {
                                  "line": 523,
                                  "column": 35
                                },
                                "end": {
                                  "line": 523,
                                  "column": 43
                                }
                              },
                              "name": "position"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 20791,
                            "end": 20795,
                            "loc": {
                              "start": {
                                "line": 523,
                                "column": 44
                              },
                              "end": {
                                "line": 523,
                                "column": 48
                              }
                            },
                            "name": "copy"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 20796,
                            "end": 20818,
                            "loc": {
                              "start": {
                                "line": 523,
                                "column": 49
                              },
                              "end": {
                                "line": 523,
                                "column": 71
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 20796,
                              "end": 20809,
                              "loc": {
                                "start": {
                                  "line": 523,
                                  "column": 49
                                },
                                "end": {
                                  "line": 523,
                                  "column": 62
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 20796,
                                "end": 20800,
                                "loc": {
                                  "start": {
                                    "line": 523,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 523,
                                    "column": 53
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 20801,
                                "end": 20809,
                                "loc": {
                                  "start": {
                                    "line": 523,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 523,
                                    "column": 62
                                  }
                                },
                                "name": "interact"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 20810,
                              "end": 20818,
                              "loc": {
                                "start": {
                                  "line": 523,
                                  "column": 63
                                },
                                "end": {
                                  "line": 523,
                                  "column": 71
                                }
                              },
                              "name": "position"
                            },
                            "computed": false
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 20832,
                      "end": 20867,
                      "loc": {
                        "start": {
                          "line": 525,
                          "column": 8
                        },
                        "end": {
                          "line": 525,
                          "column": 43
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 20832,
                        "end": 20866,
                        "loc": {
                          "start": {
                            "line": 525,
                            "column": 8
                          },
                          "end": {
                            "line": 525,
                            "column": 42
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 20832,
                          "end": 20859,
                          "loc": {
                            "start": {
                              "line": 525,
                              "column": 8
                            },
                            "end": {
                              "line": 525,
                              "column": 35
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 20832,
                            "end": 20840,
                            "loc": {
                              "start": {
                                "line": 525,
                                "column": 8
                              },
                              "end": {
                                "line": 525,
                                "column": 16
                              }
                            },
                            "name": "geometry"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 20841,
                            "end": 20859,
                            "loc": {
                              "start": {
                                "line": 525,
                                "column": 17
                              },
                              "end": {
                                "line": 525,
                                "column": 35
                              }
                            },
                            "name": "verticesNeedUpdate"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 20862,
                          "end": 20866,
                          "loc": {
                            "start": {
                              "line": 525,
                              "column": 38
                            },
                            "end": {
                              "line": 525,
                              "column": 42
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        }
                      }
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": "required methods for updateSizes",
                  "start": 20880,
                  "end": 20914,
                  "loc": {
                    "start": {
                      "line": 527,
                      "column": 4
                    },
                    "end": {
                      "line": 527,
                      "column": 38
                    }
                  },
                  "range": [
                    20880,
                    20914
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 20920,
              "end": 20988,
              "loc": {
                "start": {
                  "line": 528,
                  "column": 4
                },
                "end": {
                  "line": 530,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 20920,
                "end": 20934,
                "loc": {
                  "start": {
                    "line": 528,
                    "column": 4
                  },
                  "end": {
                    "line": 528,
                    "column": 18
                  }
                },
                "name": "getSizingPoint",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 20934,
                "end": 20988,
                "loc": {
                  "start": {
                    "line": 528,
                    "column": 18
                  },
                  "end": {
                    "line": 530,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 20937,
                  "end": 20988,
                  "loc": {
                    "start": {
                      "line": 528,
                      "column": 21
                    },
                    "end": {
                      "line": 530,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 20948,
                      "end": 20981,
                      "loc": {
                        "start": {
                          "line": 529,
                          "column": 8
                        },
                        "end": {
                          "line": 529,
                          "column": 41
                        }
                      },
                      "argument": {
                        "type": "MemberExpression",
                        "start": 20955,
                        "end": 20980,
                        "loc": {
                          "start": {
                            "line": 529,
                            "column": 15
                          },
                          "end": {
                            "line": 529,
                            "column": 40
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 20955,
                          "end": 20971,
                          "loc": {
                            "start": {
                              "line": 529,
                              "column": 15
                            },
                            "end": {
                              "line": 529,
                              "column": 31
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 20955,
                            "end": 20959,
                            "loc": {
                              "start": {
                                "line": 529,
                                "column": 15
                              },
                              "end": {
                                "line": 529,
                                "column": 19
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 20960,
                            "end": 20971,
                            "loc": {
                              "start": {
                                "line": 529,
                                "column": 20
                              },
                              "end": {
                                "line": 529,
                                "column": 31
                              }
                            },
                            "name": "centerPoint"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 20972,
                          "end": 20980,
                          "loc": {
                            "start": {
                              "line": 529,
                              "column": 32
                            },
                            "end": {
                              "line": 529,
                              "column": 40
                            }
                          },
                          "name": "position"
                        },
                        "computed": false
                      }
                    }
                  ]
                }
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": "required methods for updateSizes",
                  "start": 20880,
                  "end": 20914,
                  "loc": {
                    "start": {
                      "line": 527,
                      "column": 4
                    },
                    "end": {
                      "line": 527,
                      "column": 38
                    }
                  },
                  "range": [
                    20880,
                    20914
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 20994,
              "end": 21166,
              "loc": {
                "start": {
                  "line": 531,
                  "column": 4
                },
                "end": {
                  "line": 535,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 20994,
                "end": 21006,
                "loc": {
                  "start": {
                    "line": 531,
                    "column": 4
                  },
                  "end": {
                    "line": 531,
                    "column": 16
                  }
                },
                "name": "setGeomSizes"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 21006,
                "end": 21166,
                "loc": {
                  "start": {
                    "line": 531,
                    "column": 16
                  },
                  "end": {
                    "line": 535,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 21007,
                    "end": 21012,
                    "loc": {
                      "start": {
                        "line": 531,
                        "column": 17
                      },
                      "end": {
                        "line": 531,
                        "column": 22
                      }
                    },
                    "name": "sizes"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 21014,
                  "end": 21166,
                  "loc": {
                    "start": {
                      "line": 531,
                      "column": 24
                    },
                    "end": {
                      "line": 535,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 21025,
                      "end": 21047,
                      "loc": {
                        "start": {
                          "line": 532,
                          "column": 8
                        },
                        "end": {
                          "line": 532,
                          "column": 30
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 21025,
                        "end": 21046,
                        "loc": {
                          "start": {
                            "line": 532,
                            "column": 8
                          },
                          "end": {
                            "line": 532,
                            "column": 29
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 21025,
                          "end": 21035,
                          "loc": {
                            "start": {
                              "line": 532,
                              "column": 8
                            },
                            "end": {
                              "line": 532,
                              "column": 18
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 21025,
                            "end": 21029,
                            "loc": {
                              "start": {
                                "line": 532,
                                "column": 8
                              },
                              "end": {
                                "line": 532,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 21030,
                            "end": 21035,
                            "loc": {
                              "start": {
                                "line": 532,
                                "column": 13
                              },
                              "end": {
                                "line": 532,
                                "column": 18
                              }
                            },
                            "name": "width"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 21038,
                          "end": 21046,
                          "loc": {
                            "start": {
                              "line": 532,
                              "column": 21
                            },
                            "end": {
                              "line": 532,
                              "column": 29
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 21038,
                            "end": 21043,
                            "loc": {
                              "start": {
                                "line": 532,
                                "column": 21
                              },
                              "end": {
                                "line": 532,
                                "column": 26
                              }
                            },
                            "name": "sizes"
                          },
                          "property": {
                            "type": "Literal",
                            "start": 21044,
                            "end": 21045,
                            "loc": {
                              "start": {
                                "line": 532,
                                "column": 27
                              },
                              "end": {
                                "line": 532,
                                "column": 28
                              }
                            },
                            "value": 0,
                            "rawValue": 0,
                            "raw": "0"
                          },
                          "computed": true
                        }
                      }
                    },
                    {
                      "type": "IfStatement",
                      "start": 21057,
                      "end": 21159,
                      "loc": {
                        "start": {
                          "line": 533,
                          "column": 8
                        },
                        "end": {
                          "line": 534,
                          "column": 62
                        }
                      },
                      "test": {
                        "type": "MemberExpression",
                        "start": 21061,
                        "end": 21094,
                        "loc": {
                          "start": {
                            "line": 533,
                            "column": 12
                          },
                          "end": {
                            "line": 533,
                            "column": 45
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 21061,
                          "end": 21086,
                          "loc": {
                            "start": {
                              "line": 533,
                              "column": 12
                            },
                            "end": {
                              "line": 533,
                              "column": 37
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 21061,
                            "end": 21065,
                            "loc": {
                              "start": {
                                "line": 533,
                                "column": 12
                              },
                              "end": {
                                "line": 533,
                                "column": 16
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 21066,
                            "end": 21086,
                            "loc": {
                              "start": {
                                "line": 533,
                                "column": 17
                              },
                              "end": {
                                "line": 533,
                                "column": 37
                              }
                            },
                            "name": "constraintsSubstrate"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 21087,
                          "end": 21094,
                          "loc": {
                            "start": {
                              "line": 533,
                              "column": 38
                            },
                            "end": {
                              "line": 533,
                              "column": 45
                            }
                          },
                          "name": "visible"
                        },
                        "computed": false
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 21109,
                        "end": 21159,
                        "loc": {
                          "start": {
                            "line": 534,
                            "column": 12
                          },
                          "end": {
                            "line": 534,
                            "column": 62
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 21109,
                          "end": 21158,
                          "loc": {
                            "start": {
                              "line": 534,
                              "column": 12
                            },
                            "end": {
                              "line": 534,
                              "column": 61
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 21109,
                            "end": 21152,
                            "loc": {
                              "start": {
                                "line": 534,
                                "column": 12
                              },
                              "end": {
                                "line": 534,
                                "column": 55
                              }
                            },
                            "object": {
                              "type": "CallExpression",
                              "start": 21109,
                              "end": 21134,
                              "loc": {
                                "start": {
                                  "line": 534,
                                  "column": 12
                                },
                                "end": {
                                  "line": 534,
                                  "column": 37
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 21109,
                                "end": 21128,
                                "loc": {
                                  "start": {
                                    "line": 534,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 534,
                                    "column": 31
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 21109,
                                  "end": 21115,
                                  "loc": {
                                    "start": {
                                      "line": 534,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 534,
                                      "column": 18
                                    }
                                  },
                                  "name": "Sketch"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 21116,
                                  "end": 21128,
                                  "loc": {
                                    "start": {
                                      "line": 534,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 534,
                                      "column": 31
                                    }
                                  },
                                  "name": "FindSketchOf"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ThisExpression",
                                  "start": 21129,
                                  "end": 21133,
                                  "loc": {
                                    "start": {
                                      "line": 534,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 534,
                                      "column": 36
                                    }
                                  }
                                }
                              ]
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 21135,
                              "end": 21152,
                              "loc": {
                                "start": {
                                  "line": 534,
                                  "column": 38
                                },
                                "end": {
                                  "line": 534,
                                  "column": 55
                                }
                              },
                              "name": "updateConstraints"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "ThisExpression",
                              "start": 21153,
                              "end": 21157,
                              "loc": {
                                "start": {
                                  "line": 534,
                                  "column": 56
                                },
                                "end": {
                                  "line": 534,
                                  "column": 60
                                }
                              }
                            }
                          ]
                        }
                      },
                      "alternate": null
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 21174,
              "end": 21510,
              "loc": {
                "start": {
                  "line": 537,
                  "column": 4
                },
                "end": {
                  "line": 542,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 21174,
                "end": 21194,
                "loc": {
                  "start": {
                    "line": 537,
                    "column": 4
                  },
                  "end": {
                    "line": 537,
                    "column": 24
                  }
                },
                "name": "getSubstratePosition"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 21194,
                "end": 21510,
                "loc": {
                  "start": {
                    "line": 537,
                    "column": 24
                  },
                  "end": {
                    "line": 542,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 21195,
                    "end": 21198,
                    "loc": {
                      "start": {
                        "line": 537,
                        "column": 25
                      },
                      "end": {
                        "line": 537,
                        "column": 28
                      }
                    },
                    "name": "len"
                  },
                  {
                    "type": "Identifier",
                    "start": 21200,
                    "end": 21204,
                    "loc": {
                      "start": {
                        "line": 537,
                        "column": 30
                      },
                      "end": {
                        "line": 537,
                        "column": 34
                      }
                    },
                    "name": "size"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 21206,
                  "end": 21510,
                  "loc": {
                    "start": {
                      "line": 537,
                      "column": 36
                    },
                    "end": {
                      "line": 542,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 21217,
                      "end": 21267,
                      "loc": {
                        "start": {
                          "line": 538,
                          "column": 8
                        },
                        "end": {
                          "line": 538,
                          "column": 58
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 21221,
                          "end": 21266,
                          "loc": {
                            "start": {
                              "line": 538,
                              "column": 12
                            },
                            "end": {
                              "line": 538,
                              "column": 57
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 21221,
                            "end": 21226,
                            "loc": {
                              "start": {
                                "line": 538,
                                "column": 12
                              },
                              "end": {
                                "line": 538,
                                "column": 17
                              }
                            },
                            "name": "angle"
                          },
                          "init": {
                            "type": "BinaryExpression",
                            "start": 21229,
                            "end": 21266,
                            "loc": {
                              "start": {
                                "line": 538,
                                "column": 20
                              },
                              "end": {
                                "line": 538,
                                "column": 57
                              }
                            },
                            "left": {
                              "type": "BinaryExpression",
                              "start": 21230,
                              "end": 21261,
                              "loc": {
                                "start": {
                                  "line": 538,
                                  "column": 21
                                },
                                "end": {
                                  "line": 538,
                                  "column": 52
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 21230,
                                "end": 21245,
                                "loc": {
                                  "start": {
                                    "line": 538,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 538,
                                    "column": 36
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 21230,
                                  "end": 21234,
                                  "loc": {
                                    "start": {
                                      "line": 538,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 538,
                                      "column": 25
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 21235,
                                  "end": 21245,
                                  "loc": {
                                    "start": {
                                      "line": 538,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 538,
                                      "column": 36
                                    }
                                  },
                                  "name": "angleStart"
                                },
                                "computed": false
                              },
                              "operator": "+",
                              "right": {
                                "type": "MemberExpression",
                                "start": 21248,
                                "end": 21261,
                                "loc": {
                                  "start": {
                                    "line": 538,
                                    "column": 39
                                  },
                                  "end": {
                                    "line": 538,
                                    "column": 52
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 21248,
                                  "end": 21252,
                                  "loc": {
                                    "start": {
                                      "line": 538,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 538,
                                      "column": 43
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 21253,
                                  "end": 21261,
                                  "loc": {
                                    "start": {
                                      "line": 538,
                                      "column": 44
                                    },
                                    "end": {
                                      "line": 538,
                                      "column": 52
                                    }
                                  },
                                  "name": "angleEnd"
                                },
                                "computed": false
                              },
                              "parenthesizedExpression": true
                            },
                            "operator": "/",
                            "right": {
                              "type": "Literal",
                              "start": 21265,
                              "end": 21266,
                              "loc": {
                                "start": {
                                  "line": 538,
                                  "column": 56
                                },
                                "end": {
                                  "line": 538,
                                  "column": 57
                                }
                              },
                              "value": 2,
                              "rawValue": 2,
                              "raw": "2"
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 21277,
                      "end": 21408,
                      "loc": {
                        "start": {
                          "line": 539,
                          "column": 8
                        },
                        "end": {
                          "line": 539,
                          "column": 139
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 21281,
                          "end": 21407,
                          "loc": {
                            "start": {
                              "line": 539,
                              "column": 12
                            },
                            "end": {
                              "line": 539,
                              "column": 138
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 21281,
                            "end": 21287,
                            "loc": {
                              "start": {
                                "line": 539,
                                "column": 12
                              },
                              "end": {
                                "line": 539,
                                "column": 18
                              }
                            },
                            "name": "vector"
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 21290,
                            "end": 21407,
                            "loc": {
                              "start": {
                                "line": 539,
                                "column": 21
                              },
                              "end": {
                                "line": 539,
                                "column": 138
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 21294,
                              "end": 21307,
                              "loc": {
                                "start": {
                                  "line": 539,
                                  "column": 25
                                },
                                "end": {
                                  "line": 539,
                                  "column": 38
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 21294,
                                "end": 21299,
                                "loc": {
                                  "start": {
                                    "line": 539,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 539,
                                    "column": 30
                                  }
                                },
                                "name": "THREE"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 21300,
                                "end": 21307,
                                "loc": {
                                  "start": {
                                    "line": 539,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 539,
                                    "column": 38
                                  }
                                },
                                "name": "Vector3"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "BinaryExpression",
                                "start": 21308,
                                "end": 21354,
                                "loc": {
                                  "start": {
                                    "line": 539,
                                    "column": 39
                                  },
                                  "end": {
                                    "line": 539,
                                    "column": 85
                                  }
                                },
                                "left": {
                                  "type": "BinaryExpression",
                                  "start": 21309,
                                  "end": 21335,
                                  "loc": {
                                    "start": {
                                      "line": 539,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 539,
                                      "column": 66
                                    }
                                  },
                                  "left": {
                                    "type": "BinaryExpression",
                                    "start": 21309,
                                    "end": 21328,
                                    "loc": {
                                      "start": {
                                        "line": 539,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 539,
                                        "column": 59
                                      }
                                    },
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 21309,
                                      "end": 21320,
                                      "loc": {
                                        "start": {
                                          "line": 539,
                                          "column": 40
                                        },
                                        "end": {
                                          "line": 539,
                                          "column": 51
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 21309,
                                        "end": 21313,
                                        "loc": {
                                          "start": {
                                            "line": 539,
                                            "column": 40
                                          },
                                          "end": {
                                            "line": 539,
                                            "column": 44
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 21314,
                                        "end": 21320,
                                        "loc": {
                                          "start": {
                                            "line": 539,
                                            "column": 45
                                          },
                                          "end": {
                                            "line": 539,
                                            "column": 51
                                          }
                                        },
                                        "name": "radius"
                                      },
                                      "computed": false
                                    },
                                    "operator": "+",
                                    "right": {
                                      "type": "BinaryExpression",
                                      "start": 21323,
                                      "end": 21328,
                                      "loc": {
                                        "start": {
                                          "line": 539,
                                          "column": 54
                                        },
                                        "end": {
                                          "line": 539,
                                          "column": 59
                                        }
                                      },
                                      "left": {
                                        "type": "Identifier",
                                        "start": 21323,
                                        "end": 21326,
                                        "loc": {
                                          "start": {
                                            "line": 539,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 539,
                                            "column": 57
                                          }
                                        },
                                        "name": "len"
                                      },
                                      "operator": "/",
                                      "right": {
                                        "type": "Literal",
                                        "start": 21327,
                                        "end": 21328,
                                        "loc": {
                                          "start": {
                                            "line": 539,
                                            "column": 58
                                          },
                                          "end": {
                                            "line": 539,
                                            "column": 59
                                          }
                                        },
                                        "value": 2,
                                        "rawValue": 2,
                                        "raw": "2"
                                      }
                                    }
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 21331,
                                    "end": 21335,
                                    "loc": {
                                      "start": {
                                        "line": 539,
                                        "column": 62
                                      },
                                      "end": {
                                        "line": 539,
                                        "column": 66
                                      }
                                    },
                                    "name": "size"
                                  },
                                  "parenthesizedExpression": true
                                },
                                "operator": "*",
                                "right": {
                                  "type": "CallExpression",
                                  "start": 21339,
                                  "end": 21354,
                                  "loc": {
                                    "start": {
                                      "line": 539,
                                      "column": 70
                                    },
                                    "end": {
                                      "line": 539,
                                      "column": 85
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 21339,
                                    "end": 21347,
                                    "loc": {
                                      "start": {
                                        "line": 539,
                                        "column": 70
                                      },
                                      "end": {
                                        "line": 539,
                                        "column": 78
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 21339,
                                      "end": 21343,
                                      "loc": {
                                        "start": {
                                          "line": 539,
                                          "column": 70
                                        },
                                        "end": {
                                          "line": 539,
                                          "column": 74
                                        }
                                      },
                                      "name": "Math"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 21344,
                                      "end": 21347,
                                      "loc": {
                                        "start": {
                                          "line": 539,
                                          "column": 75
                                        },
                                        "end": {
                                          "line": 539,
                                          "column": 78
                                        }
                                      },
                                      "name": "cos"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 21348,
                                      "end": 21353,
                                      "loc": {
                                        "start": {
                                          "line": 539,
                                          "column": 79
                                        },
                                        "end": {
                                          "line": 539,
                                          "column": 84
                                        }
                                      },
                                      "name": "angle"
                                    }
                                  ]
                                }
                              },
                              {
                                "type": "BinaryExpression",
                                "start": 21356,
                                "end": 21403,
                                "loc": {
                                  "start": {
                                    "line": 539,
                                    "column": 87
                                  },
                                  "end": {
                                    "line": 539,
                                    "column": 134
                                  }
                                },
                                "left": {
                                  "type": "BinaryExpression",
                                  "start": 21357,
                                  "end": 21384,
                                  "loc": {
                                    "start": {
                                      "line": 539,
                                      "column": 88
                                    },
                                    "end": {
                                      "line": 539,
                                      "column": 115
                                    }
                                  },
                                  "left": {
                                    "type": "BinaryExpression",
                                    "start": 21357,
                                    "end": 21375,
                                    "loc": {
                                      "start": {
                                        "line": 539,
                                        "column": 88
                                      },
                                      "end": {
                                        "line": 539,
                                        "column": 106
                                      }
                                    },
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 21357,
                                      "end": 21368,
                                      "loc": {
                                        "start": {
                                          "line": 539,
                                          "column": 88
                                        },
                                        "end": {
                                          "line": 539,
                                          "column": 99
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 21357,
                                        "end": 21361,
                                        "loc": {
                                          "start": {
                                            "line": 539,
                                            "column": 88
                                          },
                                          "end": {
                                            "line": 539,
                                            "column": 92
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 21362,
                                        "end": 21368,
                                        "loc": {
                                          "start": {
                                            "line": 539,
                                            "column": 93
                                          },
                                          "end": {
                                            "line": 539,
                                            "column": 99
                                          }
                                        },
                                        "name": "radius"
                                      },
                                      "computed": false
                                    },
                                    "operator": "+",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 21371,
                                      "end": 21375,
                                      "loc": {
                                        "start": {
                                          "line": 539,
                                          "column": 102
                                        },
                                        "end": {
                                          "line": 539,
                                          "column": 106
                                        }
                                      },
                                      "name": "size"
                                    }
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "BinaryExpression",
                                    "start": 21378,
                                    "end": 21384,
                                    "loc": {
                                      "start": {
                                        "line": 539,
                                        "column": 109
                                      },
                                      "end": {
                                        "line": 539,
                                        "column": 115
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 21378,
                                      "end": 21382,
                                      "loc": {
                                        "start": {
                                          "line": 539,
                                          "column": 109
                                        },
                                        "end": {
                                          "line": 539,
                                          "column": 113
                                        }
                                      },
                                      "name": "size"
                                    },
                                    "operator": "/",
                                    "right": {
                                      "type": "Literal",
                                      "start": 21383,
                                      "end": 21384,
                                      "loc": {
                                        "start": {
                                          "line": 539,
                                          "column": 114
                                        },
                                        "end": {
                                          "line": 539,
                                          "column": 115
                                        }
                                      },
                                      "value": 2,
                                      "rawValue": 2,
                                      "raw": "2"
                                    }
                                  },
                                  "parenthesizedExpression": true
                                },
                                "operator": "*",
                                "right": {
                                  "type": "CallExpression",
                                  "start": 21388,
                                  "end": 21403,
                                  "loc": {
                                    "start": {
                                      "line": 539,
                                      "column": 119
                                    },
                                    "end": {
                                      "line": 539,
                                      "column": 134
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 21388,
                                    "end": 21396,
                                    "loc": {
                                      "start": {
                                        "line": 539,
                                        "column": 119
                                      },
                                      "end": {
                                        "line": 539,
                                        "column": 127
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 21388,
                                      "end": 21392,
                                      "loc": {
                                        "start": {
                                          "line": 539,
                                          "column": 119
                                        },
                                        "end": {
                                          "line": 539,
                                          "column": 123
                                        }
                                      },
                                      "name": "Math"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 21393,
                                      "end": 21396,
                                      "loc": {
                                        "start": {
                                          "line": 539,
                                          "column": 124
                                        },
                                        "end": {
                                          "line": 539,
                                          "column": 127
                                        }
                                      },
                                      "name": "sin"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 21397,
                                      "end": 21402,
                                      "loc": {
                                        "start": {
                                          "line": 539,
                                          "column": 128
                                        },
                                        "end": {
                                          "line": 539,
                                          "column": 133
                                        }
                                      },
                                      "name": "angle"
                                    }
                                  ]
                                }
                              },
                              {
                                "type": "Literal",
                                "start": 21405,
                                "end": 21406,
                                "loc": {
                                  "start": {
                                    "line": 539,
                                    "column": 136
                                  },
                                  "end": {
                                    "line": 539,
                                    "column": 137
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 21418,
                      "end": 21482,
                      "loc": {
                        "start": {
                          "line": 540,
                          "column": 8
                        },
                        "end": {
                          "line": 540,
                          "column": 72
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 21422,
                          "end": 21481,
                          "loc": {
                            "start": {
                              "line": 540,
                              "column": 12
                            },
                            "end": {
                              "line": 540,
                              "column": 71
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 21422,
                            "end": 21425,
                            "loc": {
                              "start": {
                                "line": 540,
                                "column": 12
                              },
                              "end": {
                                "line": 540,
                                "column": 15
                              }
                            },
                            "name": "pos"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 21428,
                            "end": 21481,
                            "loc": {
                              "start": {
                                "line": 540,
                                "column": 18
                              },
                              "end": {
                                "line": 540,
                                "column": 71
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 21428,
                              "end": 21465,
                              "loc": {
                                "start": {
                                  "line": 540,
                                  "column": 18
                                },
                                "end": {
                                  "line": 540,
                                  "column": 55
                                }
                              },
                              "object": {
                                "type": "CallExpression",
                                "start": 21428,
                                "end": 21461,
                                "loc": {
                                  "start": {
                                    "line": 540,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 540,
                                    "column": 51
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 21428,
                                  "end": 21459,
                                  "loc": {
                                    "start": {
                                      "line": 540,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 540,
                                      "column": 49
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 21428,
                                    "end": 21453,
                                    "loc": {
                                      "start": {
                                        "line": 540,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 540,
                                        "column": 43
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 21428,
                                      "end": 21444,
                                      "loc": {
                                        "start": {
                                          "line": 540,
                                          "column": 18
                                        },
                                        "end": {
                                          "line": 540,
                                          "column": 34
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 21428,
                                        "end": 21432,
                                        "loc": {
                                          "start": {
                                            "line": 540,
                                            "column": 18
                                          },
                                          "end": {
                                            "line": 540,
                                            "column": 22
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 21433,
                                        "end": 21444,
                                        "loc": {
                                          "start": {
                                            "line": 540,
                                            "column": 23
                                          },
                                          "end": {
                                            "line": 540,
                                            "column": 34
                                          }
                                        },
                                        "name": "centerPoint"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 21445,
                                      "end": 21453,
                                      "loc": {
                                        "start": {
                                          "line": 540,
                                          "column": 35
                                        },
                                        "end": {
                                          "line": 540,
                                          "column": 43
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 21454,
                                    "end": 21459,
                                    "loc": {
                                      "start": {
                                        "line": 540,
                                        "column": 44
                                      },
                                      "end": {
                                        "line": 540,
                                        "column": 49
                                      }
                                    },
                                    "name": "clone"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 21462,
                                "end": 21465,
                                "loc": {
                                  "start": {
                                    "line": 540,
                                    "column": 52
                                  },
                                  "end": {
                                    "line": 540,
                                    "column": 55
                                  }
                                },
                                "name": "add"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "CallExpression",
                                "start": 21466,
                                "end": 21480,
                                "loc": {
                                  "start": {
                                    "line": 540,
                                    "column": 56
                                  },
                                  "end": {
                                    "line": 540,
                                    "column": 70
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 21466,
                                  "end": 21478,
                                  "loc": {
                                    "start": {
                                      "line": 540,
                                      "column": 56
                                    },
                                    "end": {
                                      "line": 540,
                                      "column": 68
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 21466,
                                    "end": 21472,
                                    "loc": {
                                      "start": {
                                        "line": 540,
                                        "column": 56
                                      },
                                      "end": {
                                        "line": 540,
                                        "column": 62
                                      }
                                    },
                                    "name": "vector"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 21473,
                                    "end": 21478,
                                    "loc": {
                                      "start": {
                                        "line": 540,
                                        "column": 63
                                      },
                                      "end": {
                                        "line": 540,
                                        "column": 68
                                      }
                                    },
                                    "name": "clone"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 21492,
                      "end": 21503,
                      "loc": {
                        "start": {
                          "line": 541,
                          "column": 8
                        },
                        "end": {
                          "line": 541,
                          "column": 19
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 21499,
                        "end": 21502,
                        "loc": {
                          "start": {
                            "line": 541,
                            "column": 15
                          },
                          "end": {
                            "line": 541,
                            "column": 18
                          }
                        },
                        "name": "pos"
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 21518,
              "end": 22970,
              "loc": {
                "start": {
                  "line": 544,
                  "column": 4
                },
                "end": {
                  "line": 568,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 21518,
                "end": 21537,
                "loc": {
                  "start": {
                    "line": 544,
                    "column": 4
                  },
                  "end": {
                    "line": 544,
                    "column": 23
                  }
                },
                "name": "updateVisualization"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 21537,
                "end": 22970,
                "loc": {
                  "start": {
                    "line": 544,
                    "column": 23
                  },
                  "end": {
                    "line": 568,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 21540,
                  "end": 22970,
                  "loc": {
                    "start": {
                      "line": 544,
                      "column": 26
                    },
                    "end": {
                      "line": 568,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 21621,
                      "end": 21792,
                      "loc": {
                        "start": {
                          "line": 546,
                          "column": 8
                        },
                        "end": {
                          "line": 548,
                          "column": 10
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 21625,
                          "end": 21791,
                          "loc": {
                            "start": {
                              "line": 546,
                              "column": 12
                            },
                            "end": {
                              "line": 548,
                              "column": 9
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 21625,
                            "end": 21639,
                            "loc": {
                              "start": {
                                "line": 546,
                                "column": 12
                              },
                              "end": {
                                "line": 546,
                                "column": 26
                              }
                            },
                            "name": "areArraysEqual",
                            "leadingComments": null
                          },
                          "init": {
                            "type": "FunctionExpression",
                            "start": 21642,
                            "end": 21791,
                            "loc": {
                              "start": {
                                "line": 546,
                                "column": 29
                              },
                              "end": {
                                "line": 548,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 21651,
                                "end": 21652,
                                "loc": {
                                  "start": {
                                    "line": 546,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 546,
                                    "column": 39
                                  }
                                },
                                "name": "a"
                              },
                              {
                                "type": "Identifier",
                                "start": 21654,
                                "end": 21655,
                                "loc": {
                                  "start": {
                                    "line": 546,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 546,
                                    "column": 42
                                  }
                                },
                                "name": "b"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 21657,
                              "end": 21791,
                              "loc": {
                                "start": {
                                  "line": 546,
                                  "column": 44
                                },
                                "end": {
                                  "line": 548,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ReturnStatement",
                                  "start": 21672,
                                  "end": 21780,
                                  "loc": {
                                    "start": {
                                      "line": 547,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 547,
                                      "column": 120
                                    }
                                  },
                                  "argument": {
                                    "type": "LogicalExpression",
                                    "start": 21679,
                                    "end": 21779,
                                    "loc": {
                                      "start": {
                                        "line": 547,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 547,
                                        "column": 119
                                      }
                                    },
                                    "left": {
                                      "type": "LogicalExpression",
                                      "start": 21679,
                                      "end": 21744,
                                      "loc": {
                                        "start": {
                                          "line": 547,
                                          "column": 19
                                        },
                                        "end": {
                                          "line": 547,
                                          "column": 84
                                        }
                                      },
                                      "left": {
                                        "type": "LogicalExpression",
                                        "start": 21679,
                                        "end": 21719,
                                        "loc": {
                                          "start": {
                                            "line": 547,
                                            "column": 19
                                          },
                                          "end": {
                                            "line": 547,
                                            "column": 59
                                          }
                                        },
                                        "left": {
                                          "type": "BinaryExpression",
                                          "start": 21679,
                                          "end": 21697,
                                          "loc": {
                                            "start": {
                                              "line": 547,
                                              "column": 19
                                            },
                                            "end": {
                                              "line": 547,
                                              "column": 37
                                            }
                                          },
                                          "left": {
                                            "type": "Identifier",
                                            "start": 21679,
                                            "end": 21680,
                                            "loc": {
                                              "start": {
                                                "line": 547,
                                                "column": 19
                                              },
                                              "end": {
                                                "line": 547,
                                                "column": 20
                                              }
                                            },
                                            "name": "a"
                                          },
                                          "operator": "instanceof",
                                          "right": {
                                            "type": "Identifier",
                                            "start": 21692,
                                            "end": 21697,
                                            "loc": {
                                              "start": {
                                                "line": 547,
                                                "column": 32
                                              },
                                              "end": {
                                                "line": 547,
                                                "column": 37
                                              }
                                            },
                                            "name": "Array"
                                          }
                                        },
                                        "operator": "&&",
                                        "right": {
                                          "type": "BinaryExpression",
                                          "start": 21701,
                                          "end": 21719,
                                          "loc": {
                                            "start": {
                                              "line": 547,
                                              "column": 41
                                            },
                                            "end": {
                                              "line": 547,
                                              "column": 59
                                            }
                                          },
                                          "left": {
                                            "type": "Identifier",
                                            "start": 21701,
                                            "end": 21702,
                                            "loc": {
                                              "start": {
                                                "line": 547,
                                                "column": 41
                                              },
                                              "end": {
                                                "line": 547,
                                                "column": 42
                                              }
                                            },
                                            "name": "b"
                                          },
                                          "operator": "instanceof",
                                          "right": {
                                            "type": "Identifier",
                                            "start": 21714,
                                            "end": 21719,
                                            "loc": {
                                              "start": {
                                                "line": 547,
                                                "column": 54
                                              },
                                              "end": {
                                                "line": 547,
                                                "column": 59
                                              }
                                            },
                                            "name": "Array"
                                          }
                                        }
                                      },
                                      "operator": "&&",
                                      "right": {
                                        "type": "BinaryExpression",
                                        "start": 21723,
                                        "end": 21744,
                                        "loc": {
                                          "start": {
                                            "line": 547,
                                            "column": 63
                                          },
                                          "end": {
                                            "line": 547,
                                            "column": 84
                                          }
                                        },
                                        "left": {
                                          "type": "MemberExpression",
                                          "start": 21723,
                                          "end": 21731,
                                          "loc": {
                                            "start": {
                                              "line": 547,
                                              "column": 63
                                            },
                                            "end": {
                                              "line": 547,
                                              "column": 71
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 21723,
                                            "end": 21724,
                                            "loc": {
                                              "start": {
                                                "line": 547,
                                                "column": 63
                                              },
                                              "end": {
                                                "line": 547,
                                                "column": 64
                                              }
                                            },
                                            "name": "a"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 21725,
                                            "end": 21731,
                                            "loc": {
                                              "start": {
                                                "line": 547,
                                                "column": 65
                                              },
                                              "end": {
                                                "line": 547,
                                                "column": 71
                                              }
                                            },
                                            "name": "length"
                                          },
                                          "computed": false
                                        },
                                        "operator": "===",
                                        "right": {
                                          "type": "MemberExpression",
                                          "start": 21736,
                                          "end": 21744,
                                          "loc": {
                                            "start": {
                                              "line": 547,
                                              "column": 76
                                            },
                                            "end": {
                                              "line": 547,
                                              "column": 84
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 21736,
                                            "end": 21737,
                                            "loc": {
                                              "start": {
                                                "line": 547,
                                                "column": 76
                                              },
                                              "end": {
                                                "line": 547,
                                                "column": 77
                                              }
                                            },
                                            "name": "b"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 21738,
                                            "end": 21744,
                                            "loc": {
                                              "start": {
                                                "line": 547,
                                                "column": 78
                                              },
                                              "end": {
                                                "line": 547,
                                                "column": 84
                                              }
                                            },
                                            "name": "length"
                                          },
                                          "computed": false
                                        }
                                      }
                                    },
                                    "operator": "&&",
                                    "right": {
                                      "type": "CallExpression",
                                      "start": 21748,
                                      "end": 21779,
                                      "loc": {
                                        "start": {
                                          "line": 547,
                                          "column": 88
                                        },
                                        "end": {
                                          "line": 547,
                                          "column": 119
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 21748,
                                        "end": 21755,
                                        "loc": {
                                          "start": {
                                            "line": 547,
                                            "column": 88
                                          },
                                          "end": {
                                            "line": 547,
                                            "column": 95
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 21748,
                                          "end": 21749,
                                          "loc": {
                                            "start": {
                                              "line": 547,
                                              "column": 88
                                            },
                                            "end": {
                                              "line": 547,
                                              "column": 89
                                            }
                                          },
                                          "name": "a"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 21750,
                                          "end": 21755,
                                          "loc": {
                                            "start": {
                                              "line": 547,
                                              "column": 90
                                            },
                                            "end": {
                                              "line": 547,
                                              "column": 95
                                            }
                                          },
                                          "name": "every"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "ArrowFunctionExpression",
                                          "start": 21756,
                                          "end": 21778,
                                          "loc": {
                                            "start": {
                                              "line": 547,
                                              "column": 96
                                            },
                                            "end": {
                                              "line": 547,
                                              "column": 118
                                            }
                                          },
                                          "id": null,
                                          "generator": false,
                                          "expression": true,
                                          "async": false,
                                          "params": [
                                            {
                                              "type": "Identifier",
                                              "start": 21757,
                                              "end": 21759,
                                              "loc": {
                                                "start": {
                                                  "line": 547,
                                                  "column": 97
                                                },
                                                "end": {
                                                  "line": 547,
                                                  "column": 99
                                                }
                                              },
                                              "name": "el"
                                            },
                                            {
                                              "type": "Identifier",
                                              "start": 21761,
                                              "end": 21762,
                                              "loc": {
                                                "start": {
                                                  "line": 547,
                                                  "column": 101
                                                },
                                                "end": {
                                                  "line": 547,
                                                  "column": 102
                                                }
                                              },
                                              "name": "i"
                                            }
                                          ],
                                          "body": {
                                            "type": "BinaryExpression",
                                            "start": 21767,
                                            "end": 21778,
                                            "loc": {
                                              "start": {
                                                "line": 547,
                                                "column": 107
                                              },
                                              "end": {
                                                "line": 547,
                                                "column": 118
                                              }
                                            },
                                            "left": {
                                              "type": "Identifier",
                                              "start": 21767,
                                              "end": 21769,
                                              "loc": {
                                                "start": {
                                                  "line": 547,
                                                  "column": 107
                                                },
                                                "end": {
                                                  "line": 547,
                                                  "column": 109
                                                }
                                              },
                                              "name": "el"
                                            },
                                            "operator": "===",
                                            "right": {
                                              "type": "MemberExpression",
                                              "start": 21774,
                                              "end": 21778,
                                              "loc": {
                                                "start": {
                                                  "line": 547,
                                                  "column": 114
                                                },
                                                "end": {
                                                  "line": 547,
                                                  "column": 118
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 21774,
                                                "end": 21775,
                                                "loc": {
                                                  "start": {
                                                    "line": 547,
                                                    "column": 114
                                                  },
                                                  "end": {
                                                    "line": 547,
                                                    "column": 115
                                                  }
                                                },
                                                "name": "b"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 21776,
                                                "end": 21777,
                                                "loc": {
                                                  "start": {
                                                    "line": 547,
                                                    "column": 116
                                                  },
                                                  "end": {
                                                    "line": 547,
                                                    "column": 117
                                                  }
                                                },
                                                "name": "i"
                                              },
                                              "computed": true
                                            }
                                          }
                                        }
                                      ]
                                    }
                                  }
                                }
                              ]
                            }
                          },
                          "leadingComments": null
                        }
                      ],
                      "kind": "var",
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "TODO: is there a better place for such a general function?",
                          "start": 21551,
                          "end": 21611,
                          "loc": {
                            "start": {
                              "line": 545,
                              "column": 8
                            },
                            "end": {
                              "line": 545,
                              "column": 68
                            }
                          },
                          "range": [
                            21551,
                            21611
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 21804,
                      "end": 21878,
                      "loc": {
                        "start": {
                          "line": 550,
                          "column": 8
                        },
                        "end": {
                          "line": 550,
                          "column": 82
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 21808,
                          "end": 21877,
                          "loc": {
                            "start": {
                              "line": 550,
                              "column": 12
                            },
                            "end": {
                              "line": 550,
                              "column": 81
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 21808,
                            "end": 21817,
                            "loc": {
                              "start": {
                                "line": 550,
                                "column": 12
                              },
                              "end": {
                                "line": 550,
                                "column": 21
                              }
                            },
                            "name": "newParams"
                          },
                          "init": {
                            "type": "ArrayExpression",
                            "start": 21820,
                            "end": 21877,
                            "loc": {
                              "start": {
                                "line": 550,
                                "column": 24
                              },
                              "end": {
                                "line": 550,
                                "column": 81
                              }
                            },
                            "elements": [
                              {
                                "type": "MemberExpression",
                                "start": 21821,
                                "end": 21832,
                                "loc": {
                                  "start": {
                                    "line": 550,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 550,
                                    "column": 36
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 21821,
                                  "end": 21825,
                                  "loc": {
                                    "start": {
                                      "line": 550,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 550,
                                      "column": 29
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 21826,
                                  "end": 21832,
                                  "loc": {
                                    "start": {
                                      "line": 550,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 550,
                                      "column": 36
                                    }
                                  },
                                  "name": "radius"
                                },
                                "computed": false
                              },
                              {
                                "type": "MemberExpression",
                                "start": 21834,
                                "end": 21844,
                                "loc": {
                                  "start": {
                                    "line": 550,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 550,
                                    "column": 48
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 21834,
                                  "end": 21838,
                                  "loc": {
                                    "start": {
                                      "line": 550,
                                      "column": 38
                                    },
                                    "end": {
                                      "line": 550,
                                      "column": 42
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 21839,
                                  "end": 21844,
                                  "loc": {
                                    "start": {
                                      "line": 550,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 550,
                                      "column": 48
                                    }
                                  },
                                  "name": "width"
                                },
                                "computed": false
                              },
                              {
                                "type": "MemberExpression",
                                "start": 21846,
                                "end": 21861,
                                "loc": {
                                  "start": {
                                    "line": 550,
                                    "column": 50
                                  },
                                  "end": {
                                    "line": 550,
                                    "column": 65
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 21846,
                                  "end": 21850,
                                  "loc": {
                                    "start": {
                                      "line": 550,
                                      "column": 50
                                    },
                                    "end": {
                                      "line": 550,
                                      "column": 54
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 21851,
                                  "end": 21861,
                                  "loc": {
                                    "start": {
                                      "line": 550,
                                      "column": 55
                                    },
                                    "end": {
                                      "line": 550,
                                      "column": 65
                                    }
                                  },
                                  "name": "angleStart"
                                },
                                "computed": false
                              },
                              {
                                "type": "MemberExpression",
                                "start": 21863,
                                "end": 21876,
                                "loc": {
                                  "start": {
                                    "line": 550,
                                    "column": 67
                                  },
                                  "end": {
                                    "line": 550,
                                    "column": 80
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 21863,
                                  "end": 21867,
                                  "loc": {
                                    "start": {
                                      "line": 550,
                                      "column": 67
                                    },
                                    "end": {
                                      "line": 550,
                                      "column": 71
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 21868,
                                  "end": 21876,
                                  "loc": {
                                    "start": {
                                      "line": 550,
                                      "column": 72
                                    },
                                    "end": {
                                      "line": 550,
                                      "column": 80
                                    }
                                  },
                                  "name": "angleEnd"
                                },
                                "computed": false
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 21888,
                      "end": 22829,
                      "loc": {
                        "start": {
                          "line": 551,
                          "column": 8
                        },
                        "end": {
                          "line": 565,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 21892,
                        "end": 21949,
                        "loc": {
                          "start": {
                            "line": 551,
                            "column": 12
                          },
                          "end": {
                            "line": 551,
                            "column": 69
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "CallExpression",
                          "start": 21893,
                          "end": 21949,
                          "loc": {
                            "start": {
                              "line": 551,
                              "column": 13
                            },
                            "end": {
                              "line": 551,
                              "column": 69
                            }
                          },
                          "callee": {
                            "type": "Identifier",
                            "start": 21893,
                            "end": 21907,
                            "loc": {
                              "start": {
                                "line": 551,
                                "column": 13
                              },
                              "end": {
                                "line": 551,
                                "column": 27
                              }
                            },
                            "name": "areArraysEqual"
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 21908,
                              "end": 21917,
                              "loc": {
                                "start": {
                                  "line": 551,
                                  "column": 28
                                },
                                "end": {
                                  "line": 551,
                                  "column": 37
                                }
                              },
                              "name": "newParams"
                            },
                            {
                              "type": "MemberExpression",
                              "start": 21919,
                              "end": 21948,
                              "loc": {
                                "start": {
                                  "line": 551,
                                  "column": 39
                                },
                                "end": {
                                  "line": 551,
                                  "column": 68
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 21919,
                                "end": 21937,
                                "loc": {
                                  "start": {
                                    "line": 551,
                                    "column": 39
                                  },
                                  "end": {
                                    "line": 551,
                                    "column": 57
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 21919,
                                  "end": 21928,
                                  "loc": {
                                    "start": {
                                      "line": 551,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 551,
                                      "column": 48
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 21919,
                                    "end": 21923,
                                    "loc": {
                                      "start": {
                                        "line": 551,
                                        "column": 39
                                      },
                                      "end": {
                                        "line": 551,
                                        "column": 43
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 21924,
                                    "end": 21928,
                                    "loc": {
                                      "start": {
                                        "line": 551,
                                        "column": 44
                                      },
                                      "end": {
                                        "line": 551,
                                        "column": 48
                                      }
                                    },
                                    "name": "mesh"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 21929,
                                  "end": 21937,
                                  "loc": {
                                    "start": {
                                      "line": 551,
                                      "column": 49
                                    },
                                    "end": {
                                      "line": 551,
                                      "column": 57
                                    }
                                  },
                                  "name": "geometry"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 21938,
                                "end": 21948,
                                "loc": {
                                  "start": {
                                    "line": 551,
                                    "column": 58
                                  },
                                  "end": {
                                    "line": 551,
                                    "column": 68
                                  }
                                },
                                "name": "parameters"
                              },
                              "computed": false
                            }
                          ]
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 21951,
                        "end": 22829,
                        "loc": {
                          "start": {
                            "line": 551,
                            "column": 71
                          },
                          "end": {
                            "line": 565,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 22030,
                            "end": 22075,
                            "loc": {
                              "start": {
                                "line": 553,
                                "column": 12
                              },
                              "end": {
                                "line": 553,
                                "column": 57
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 22034,
                                "end": 22074,
                                "loc": {
                                  "start": {
                                    "line": 553,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 553,
                                    "column": 56
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 22034,
                                  "end": 22045,
                                  "loc": {
                                    "start": {
                                      "line": 553,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 553,
                                      "column": 27
                                    }
                                  },
                                  "name": "innerRadius",
                                  "leadingComments": null
                                },
                                "init": {
                                  "type": "BinaryExpression",
                                  "start": 22048,
                                  "end": 22074,
                                  "loc": {
                                    "start": {
                                      "line": 553,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 553,
                                      "column": 56
                                    }
                                  },
                                  "left": {
                                    "type": "MemberExpression",
                                    "start": 22048,
                                    "end": 22059,
                                    "loc": {
                                      "start": {
                                        "line": 553,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 553,
                                        "column": 41
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 22048,
                                      "end": 22052,
                                      "loc": {
                                        "start": {
                                          "line": 553,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 553,
                                          "column": 34
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 22053,
                                      "end": 22059,
                                      "loc": {
                                        "start": {
                                          "line": 553,
                                          "column": 35
                                        },
                                        "end": {
                                          "line": 553,
                                          "column": 41
                                        }
                                      },
                                      "name": "radius"
                                    },
                                    "computed": false
                                  },
                                  "operator": "-",
                                  "right": {
                                    "type": "BinaryExpression",
                                    "start": 22062,
                                    "end": 22074,
                                    "loc": {
                                      "start": {
                                        "line": 553,
                                        "column": 44
                                      },
                                      "end": {
                                        "line": 553,
                                        "column": 56
                                      }
                                    },
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 22062,
                                      "end": 22072,
                                      "loc": {
                                        "start": {
                                          "line": 553,
                                          "column": 44
                                        },
                                        "end": {
                                          "line": 553,
                                          "column": 54
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 22062,
                                        "end": 22066,
                                        "loc": {
                                          "start": {
                                            "line": 553,
                                            "column": 44
                                          },
                                          "end": {
                                            "line": 553,
                                            "column": 48
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 22067,
                                        "end": 22072,
                                        "loc": {
                                          "start": {
                                            "line": 553,
                                            "column": 49
                                          },
                                          "end": {
                                            "line": 553,
                                            "column": 54
                                          }
                                        },
                                        "name": "width"
                                      },
                                      "computed": false
                                    },
                                    "operator": "/",
                                    "right": {
                                      "type": "Literal",
                                      "start": 22073,
                                      "end": 22074,
                                      "loc": {
                                        "start": {
                                          "line": 553,
                                          "column": 55
                                        },
                                        "end": {
                                          "line": 553,
                                          "column": 56
                                        }
                                      },
                                      "value": 2,
                                      "rawValue": 2,
                                      "raw": "2"
                                    }
                                  }
                                },
                                "leadingComments": null
                              }
                            ],
                            "kind": "var",
                            "leadingComments": [
                              {
                                "type": "CommentLine",
                                "value": "parameters have changed: update vertex positions",
                                "start": 21966,
                                "end": 22016,
                                "loc": {
                                  "start": {
                                    "line": 552,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 552,
                                    "column": 62
                                  }
                                },
                                "range": [
                                  21966,
                                  22016
                                ]
                              }
                            ]
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 22089,
                            "end": 22134,
                            "loc": {
                              "start": {
                                "line": 554,
                                "column": 12
                              },
                              "end": {
                                "line": 554,
                                "column": 57
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 22093,
                                "end": 22133,
                                "loc": {
                                  "start": {
                                    "line": 554,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 554,
                                    "column": 56
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 22093,
                                  "end": 22104,
                                  "loc": {
                                    "start": {
                                      "line": 554,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 554,
                                      "column": 27
                                    }
                                  },
                                  "name": "outerRadius"
                                },
                                "init": {
                                  "type": "BinaryExpression",
                                  "start": 22107,
                                  "end": 22133,
                                  "loc": {
                                    "start": {
                                      "line": 554,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 554,
                                      "column": 56
                                    }
                                  },
                                  "left": {
                                    "type": "MemberExpression",
                                    "start": 22107,
                                    "end": 22118,
                                    "loc": {
                                      "start": {
                                        "line": 554,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 554,
                                        "column": 41
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 22107,
                                      "end": 22111,
                                      "loc": {
                                        "start": {
                                          "line": 554,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 554,
                                          "column": 34
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 22112,
                                      "end": 22118,
                                      "loc": {
                                        "start": {
                                          "line": 554,
                                          "column": 35
                                        },
                                        "end": {
                                          "line": 554,
                                          "column": 41
                                        }
                                      },
                                      "name": "radius"
                                    },
                                    "computed": false
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "BinaryExpression",
                                    "start": 22121,
                                    "end": 22133,
                                    "loc": {
                                      "start": {
                                        "line": 554,
                                        "column": 44
                                      },
                                      "end": {
                                        "line": 554,
                                        "column": 56
                                      }
                                    },
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 22121,
                                      "end": 22131,
                                      "loc": {
                                        "start": {
                                          "line": 554,
                                          "column": 44
                                        },
                                        "end": {
                                          "line": 554,
                                          "column": 54
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 22121,
                                        "end": 22125,
                                        "loc": {
                                          "start": {
                                            "line": 554,
                                            "column": 44
                                          },
                                          "end": {
                                            "line": 554,
                                            "column": 48
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 22126,
                                        "end": 22131,
                                        "loc": {
                                          "start": {
                                            "line": 554,
                                            "column": 49
                                          },
                                          "end": {
                                            "line": 554,
                                            "column": 54
                                          }
                                        },
                                        "name": "width"
                                      },
                                      "computed": false
                                    },
                                    "operator": "/",
                                    "right": {
                                      "type": "Literal",
                                      "start": 22132,
                                      "end": 22133,
                                      "loc": {
                                        "start": {
                                          "line": 554,
                                          "column": 55
                                        },
                                        "end": {
                                          "line": 554,
                                          "column": 56
                                        }
                                      },
                                      "value": 2,
                                      "rawValue": 2,
                                      "raw": "2"
                                    }
                                  }
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "ForStatement",
                            "start": 22148,
                            "end": 22592,
                            "loc": {
                              "start": {
                                "line": 555,
                                "column": 12
                              },
                              "end": {
                                "line": 560,
                                "column": 13
                              }
                            },
                            "init": {
                              "type": "VariableDeclaration",
                              "start": 22153,
                              "end": 22162,
                              "loc": {
                                "start": {
                                  "line": 555,
                                  "column": 17
                                },
                                "end": {
                                  "line": 555,
                                  "column": 26
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 22157,
                                  "end": 22162,
                                  "loc": {
                                    "start": {
                                      "line": 555,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 555,
                                      "column": 26
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 22157,
                                    "end": 22158,
                                    "loc": {
                                      "start": {
                                        "line": 555,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 555,
                                        "column": 22
                                      }
                                    },
                                    "name": "i"
                                  },
                                  "init": {
                                    "type": "Literal",
                                    "start": 22161,
                                    "end": 22162,
                                    "loc": {
                                      "start": {
                                        "line": 555,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 555,
                                        "column": 26
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  }
                                }
                              ],
                              "kind": "var"
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 22164,
                              "end": 22188,
                              "loc": {
                                "start": {
                                  "line": 555,
                                  "column": 28
                                },
                                "end": {
                                  "line": 555,
                                  "column": 52
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 22164,
                                "end": 22165,
                                "loc": {
                                  "start": {
                                    "line": 555,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 555,
                                    "column": 29
                                  }
                                },
                                "name": "i"
                              },
                              "operator": "<=",
                              "right": {
                                "type": "MemberExpression",
                                "start": 22169,
                                "end": 22188,
                                "loc": {
                                  "start": {
                                    "line": 555,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 555,
                                    "column": 52
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 22169,
                                  "end": 22173,
                                  "loc": {
                                    "start": {
                                      "line": 555,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 555,
                                      "column": 37
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 22174,
                                  "end": 22188,
                                  "loc": {
                                    "start": {
                                      "line": 555,
                                      "column": 38
                                    },
                                    "end": {
                                      "line": 555,
                                      "column": 52
                                    }
                                  },
                                  "name": "meshResolution"
                                },
                                "computed": false
                              }
                            },
                            "update": {
                              "type": "UpdateExpression",
                              "start": 22190,
                              "end": 22193,
                              "loc": {
                                "start": {
                                  "line": 555,
                                  "column": 54
                                },
                                "end": {
                                  "line": 555,
                                  "column": 57
                                }
                              },
                              "operator": "++",
                              "prefix": false,
                              "argument": {
                                "type": "Identifier",
                                "start": 22190,
                                "end": 22191,
                                "loc": {
                                  "start": {
                                    "line": 555,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 555,
                                    "column": 55
                                  }
                                },
                                "name": "i"
                              }
                            },
                            "body": {
                              "type": "BlockStatement",
                              "start": 22195,
                              "end": 22592,
                              "loc": {
                                "start": {
                                  "line": 555,
                                  "column": 59
                                },
                                "end": {
                                  "line": 560,
                                  "column": 13
                                }
                              },
                              "body": [
                                {
                                  "type": "VariableDeclaration",
                                  "start": 22214,
                                  "end": 22304,
                                  "loc": {
                                    "start": {
                                      "line": 556,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 556,
                                      "column": 106
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 22218,
                                      "end": 22303,
                                      "loc": {
                                        "start": {
                                          "line": 556,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 556,
                                          "column": 105
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 22218,
                                        "end": 22223,
                                        "loc": {
                                          "start": {
                                            "line": 556,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 556,
                                            "column": 25
                                          }
                                        },
                                        "name": "angle"
                                      },
                                      "init": {
                                        "type": "BinaryExpression",
                                        "start": 22226,
                                        "end": 22303,
                                        "loc": {
                                          "start": {
                                            "line": 556,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 556,
                                            "column": 105
                                          }
                                        },
                                        "left": {
                                          "type": "MemberExpression",
                                          "start": 22226,
                                          "end": 22241,
                                          "loc": {
                                            "start": {
                                              "line": 556,
                                              "column": 28
                                            },
                                            "end": {
                                              "line": 556,
                                              "column": 43
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 22226,
                                            "end": 22230,
                                            "loc": {
                                              "start": {
                                                "line": 556,
                                                "column": 28
                                              },
                                              "end": {
                                                "line": 556,
                                                "column": 32
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 22231,
                                            "end": 22241,
                                            "loc": {
                                              "start": {
                                                "line": 556,
                                                "column": 33
                                              },
                                              "end": {
                                                "line": 556,
                                                "column": 43
                                              }
                                            },
                                            "name": "angleStart"
                                          },
                                          "computed": false
                                        },
                                        "operator": "+",
                                        "right": {
                                          "type": "BinaryExpression",
                                          "start": 22244,
                                          "end": 22303,
                                          "loc": {
                                            "start": {
                                              "line": 556,
                                              "column": 46
                                            },
                                            "end": {
                                              "line": 556,
                                              "column": 105
                                            }
                                          },
                                          "left": {
                                            "type": "BinaryExpression",
                                            "start": 22244,
                                            "end": 22281,
                                            "loc": {
                                              "start": {
                                                "line": 556,
                                                "column": 46
                                              },
                                              "end": {
                                                "line": 556,
                                                "column": 83
                                              }
                                            },
                                            "left": {
                                              "type": "BinaryExpression",
                                              "start": 22245,
                                              "end": 22276,
                                              "loc": {
                                                "start": {
                                                  "line": 556,
                                                  "column": 47
                                                },
                                                "end": {
                                                  "line": 556,
                                                  "column": 78
                                                }
                                              },
                                              "left": {
                                                "type": "MemberExpression",
                                                "start": 22245,
                                                "end": 22258,
                                                "loc": {
                                                  "start": {
                                                    "line": 556,
                                                    "column": 47
                                                  },
                                                  "end": {
                                                    "line": 556,
                                                    "column": 60
                                                  }
                                                },
                                                "object": {
                                                  "type": "ThisExpression",
                                                  "start": 22245,
                                                  "end": 22249,
                                                  "loc": {
                                                    "start": {
                                                      "line": 556,
                                                      "column": 47
                                                    },
                                                    "end": {
                                                      "line": 556,
                                                      "column": 51
                                                    }
                                                  }
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 22250,
                                                  "end": 22258,
                                                  "loc": {
                                                    "start": {
                                                      "line": 556,
                                                      "column": 52
                                                    },
                                                    "end": {
                                                      "line": 556,
                                                      "column": 60
                                                    }
                                                  },
                                                  "name": "angleEnd"
                                                },
                                                "computed": false
                                              },
                                              "operator": "-",
                                              "right": {
                                                "type": "MemberExpression",
                                                "start": 22261,
                                                "end": 22276,
                                                "loc": {
                                                  "start": {
                                                    "line": 556,
                                                    "column": 63
                                                  },
                                                  "end": {
                                                    "line": 556,
                                                    "column": 78
                                                  }
                                                },
                                                "object": {
                                                  "type": "ThisExpression",
                                                  "start": 22261,
                                                  "end": 22265,
                                                  "loc": {
                                                    "start": {
                                                      "line": 556,
                                                      "column": 63
                                                    },
                                                    "end": {
                                                      "line": 556,
                                                      "column": 67
                                                    }
                                                  }
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 22266,
                                                  "end": 22276,
                                                  "loc": {
                                                    "start": {
                                                      "line": 556,
                                                      "column": 68
                                                    },
                                                    "end": {
                                                      "line": 556,
                                                      "column": 78
                                                    }
                                                  },
                                                  "name": "angleStart"
                                                },
                                                "computed": false
                                              },
                                              "parenthesizedExpression": true
                                            },
                                            "operator": "*",
                                            "right": {
                                              "type": "Identifier",
                                              "start": 22280,
                                              "end": 22281,
                                              "loc": {
                                                "start": {
                                                  "line": 556,
                                                  "column": 82
                                                },
                                                "end": {
                                                  "line": 556,
                                                  "column": 83
                                                }
                                              },
                                              "name": "i"
                                            }
                                          },
                                          "operator": "/",
                                          "right": {
                                            "type": "MemberExpression",
                                            "start": 22284,
                                            "end": 22303,
                                            "loc": {
                                              "start": {
                                                "line": 556,
                                                "column": 86
                                              },
                                              "end": {
                                                "line": 556,
                                                "column": 105
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 22284,
                                              "end": 22288,
                                              "loc": {
                                                "start": {
                                                  "line": 556,
                                                  "column": 86
                                                },
                                                "end": {
                                                  "line": 556,
                                                  "column": 90
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 22289,
                                              "end": 22303,
                                              "loc": {
                                                "start": {
                                                  "line": 556,
                                                  "column": 91
                                                },
                                                "end": {
                                                  "line": 556,
                                                  "column": 105
                                                }
                                              },
                                              "name": "meshResolution"
                                            },
                                            "computed": false
                                          }
                                        }
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 22322,
                                  "end": 22373,
                                  "loc": {
                                    "start": {
                                      "line": 557,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 557,
                                      "column": 67
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 22326,
                                      "end": 22348,
                                      "loc": {
                                        "start": {
                                          "line": 557,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 557,
                                          "column": 42
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 22326,
                                        "end": 22330,
                                        "loc": {
                                          "start": {
                                            "line": 557,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 557,
                                            "column": 24
                                          }
                                        },
                                        "name": "dirX"
                                      },
                                      "init": {
                                        "type": "CallExpression",
                                        "start": 22333,
                                        "end": 22348,
                                        "loc": {
                                          "start": {
                                            "line": 557,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 557,
                                            "column": 42
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 22333,
                                          "end": 22341,
                                          "loc": {
                                            "start": {
                                              "line": 557,
                                              "column": 27
                                            },
                                            "end": {
                                              "line": 557,
                                              "column": 35
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 22333,
                                            "end": 22337,
                                            "loc": {
                                              "start": {
                                                "line": 557,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 557,
                                                "column": 31
                                              }
                                            },
                                            "name": "Math"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 22338,
                                            "end": 22341,
                                            "loc": {
                                              "start": {
                                                "line": 557,
                                                "column": 32
                                              },
                                              "end": {
                                                "line": 557,
                                                "column": 35
                                              }
                                            },
                                            "name": "cos"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 22342,
                                            "end": 22347,
                                            "loc": {
                                              "start": {
                                                "line": 557,
                                                "column": 36
                                              },
                                              "end": {
                                                "line": 557,
                                                "column": 41
                                              }
                                            },
                                            "name": "angle"
                                          }
                                        ]
                                      }
                                    },
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 22350,
                                      "end": 22372,
                                      "loc": {
                                        "start": {
                                          "line": 557,
                                          "column": 44
                                        },
                                        "end": {
                                          "line": 557,
                                          "column": 66
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 22350,
                                        "end": 22354,
                                        "loc": {
                                          "start": {
                                            "line": 557,
                                            "column": 44
                                          },
                                          "end": {
                                            "line": 557,
                                            "column": 48
                                          }
                                        },
                                        "name": "dirY"
                                      },
                                      "init": {
                                        "type": "CallExpression",
                                        "start": 22357,
                                        "end": 22372,
                                        "loc": {
                                          "start": {
                                            "line": 557,
                                            "column": 51
                                          },
                                          "end": {
                                            "line": 557,
                                            "column": 66
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 22357,
                                          "end": 22365,
                                          "loc": {
                                            "start": {
                                              "line": 557,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 557,
                                              "column": 59
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 22357,
                                            "end": 22361,
                                            "loc": {
                                              "start": {
                                                "line": 557,
                                                "column": 51
                                              },
                                              "end": {
                                                "line": 557,
                                                "column": 55
                                              }
                                            },
                                            "name": "Math"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 22362,
                                            "end": 22365,
                                            "loc": {
                                              "start": {
                                                "line": 557,
                                                "column": 56
                                              },
                                              "end": {
                                                "line": 557,
                                                "column": 59
                                              }
                                            },
                                            "name": "sin"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 22366,
                                            "end": 22371,
                                            "loc": {
                                              "start": {
                                                "line": 557,
                                                "column": 60
                                              },
                                              "end": {
                                                "line": 557,
                                                "column": 65
                                              }
                                            },
                                            "name": "angle"
                                          }
                                        ]
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 22391,
                                  "end": 22475,
                                  "loc": {
                                    "start": {
                                      "line": 558,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 558,
                                      "column": 100
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 22391,
                                    "end": 22474,
                                    "loc": {
                                      "start": {
                                        "line": 558,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 558,
                                        "column": 99
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 22391,
                                      "end": 22429,
                                      "loc": {
                                        "start": {
                                          "line": 558,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 558,
                                          "column": 54
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 22391,
                                        "end": 22425,
                                        "loc": {
                                          "start": {
                                            "line": 558,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 558,
                                            "column": 50
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 22391,
                                          "end": 22418,
                                          "loc": {
                                            "start": {
                                              "line": 558,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 558,
                                              "column": 43
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 22391,
                                            "end": 22409,
                                            "loc": {
                                              "start": {
                                                "line": 558,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 558,
                                                "column": 34
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 22391,
                                              "end": 22400,
                                              "loc": {
                                                "start": {
                                                  "line": 558,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 558,
                                                  "column": 25
                                                }
                                              },
                                              "object": {
                                                "type": "ThisExpression",
                                                "start": 22391,
                                                "end": 22395,
                                                "loc": {
                                                  "start": {
                                                    "line": 558,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 558,
                                                    "column": 20
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 22396,
                                                "end": 22400,
                                                "loc": {
                                                  "start": {
                                                    "line": 558,
                                                    "column": 21
                                                  },
                                                  "end": {
                                                    "line": 558,
                                                    "column": 25
                                                  }
                                                },
                                                "name": "mesh"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 22401,
                                              "end": 22409,
                                              "loc": {
                                                "start": {
                                                  "line": 558,
                                                  "column": 26
                                                },
                                                "end": {
                                                  "line": 558,
                                                  "column": 34
                                                }
                                              },
                                              "name": "geometry"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 22410,
                                            "end": 22418,
                                            "loc": {
                                              "start": {
                                                "line": 558,
                                                "column": 35
                                              },
                                              "end": {
                                                "line": 558,
                                                "column": 43
                                              }
                                            },
                                            "name": "vertices"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "BinaryExpression",
                                          "start": 22419,
                                          "end": 22424,
                                          "loc": {
                                            "start": {
                                              "line": 558,
                                              "column": 44
                                            },
                                            "end": {
                                              "line": 558,
                                              "column": 49
                                            }
                                          },
                                          "left": {
                                            "type": "BinaryExpression",
                                            "start": 22419,
                                            "end": 22422,
                                            "loc": {
                                              "start": {
                                                "line": 558,
                                                "column": 44
                                              },
                                              "end": {
                                                "line": 558,
                                                "column": 47
                                              }
                                            },
                                            "left": {
                                              "type": "Literal",
                                              "start": 22419,
                                              "end": 22420,
                                              "loc": {
                                                "start": {
                                                  "line": 558,
                                                  "column": 44
                                                },
                                                "end": {
                                                  "line": 558,
                                                  "column": 45
                                                }
                                              },
                                              "value": 2,
                                              "rawValue": 2,
                                              "raw": "2"
                                            },
                                            "operator": "*",
                                            "right": {
                                              "type": "Identifier",
                                              "start": 22421,
                                              "end": 22422,
                                              "loc": {
                                                "start": {
                                                  "line": 558,
                                                  "column": 46
                                                },
                                                "end": {
                                                  "line": 558,
                                                  "column": 47
                                                }
                                              },
                                              "name": "i"
                                            }
                                          },
                                          "operator": "+",
                                          "right": {
                                            "type": "Literal",
                                            "start": 22423,
                                            "end": 22424,
                                            "loc": {
                                              "start": {
                                                "line": 558,
                                                "column": 48
                                              },
                                              "end": {
                                                "line": 558,
                                                "column": 49
                                              }
                                            },
                                            "value": 0,
                                            "rawValue": 0,
                                            "raw": "0"
                                          }
                                        },
                                        "computed": true
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 22426,
                                        "end": 22429,
                                        "loc": {
                                          "start": {
                                            "line": 558,
                                            "column": 51
                                          },
                                          "end": {
                                            "line": 558,
                                            "column": 54
                                          }
                                        },
                                        "name": "set"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "BinaryExpression",
                                        "start": 22430,
                                        "end": 22448,
                                        "loc": {
                                          "start": {
                                            "line": 558,
                                            "column": 55
                                          },
                                          "end": {
                                            "line": 558,
                                            "column": 73
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 22430,
                                          "end": 22441,
                                          "loc": {
                                            "start": {
                                              "line": 558,
                                              "column": 55
                                            },
                                            "end": {
                                              "line": 558,
                                              "column": 66
                                            }
                                          },
                                          "name": "outerRadius"
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 22444,
                                          "end": 22448,
                                          "loc": {
                                            "start": {
                                              "line": 558,
                                              "column": 69
                                            },
                                            "end": {
                                              "line": 558,
                                              "column": 73
                                            }
                                          },
                                          "name": "dirX"
                                        }
                                      },
                                      {
                                        "type": "BinaryExpression",
                                        "start": 22450,
                                        "end": 22468,
                                        "loc": {
                                          "start": {
                                            "line": 558,
                                            "column": 75
                                          },
                                          "end": {
                                            "line": 558,
                                            "column": 93
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 22450,
                                          "end": 22461,
                                          "loc": {
                                            "start": {
                                              "line": 558,
                                              "column": 75
                                            },
                                            "end": {
                                              "line": 558,
                                              "column": 86
                                            }
                                          },
                                          "name": "outerRadius"
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 22464,
                                          "end": 22468,
                                          "loc": {
                                            "start": {
                                              "line": 558,
                                              "column": 89
                                            },
                                            "end": {
                                              "line": 558,
                                              "column": 93
                                            }
                                          },
                                          "name": "dirY"
                                        }
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 22470,
                                        "end": 22473,
                                        "loc": {
                                          "start": {
                                            "line": 558,
                                            "column": 95
                                          },
                                          "end": {
                                            "line": 558,
                                            "column": 98
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0.0"
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 22493,
                                  "end": 22577,
                                  "loc": {
                                    "start": {
                                      "line": 559,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 559,
                                      "column": 100
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 22493,
                                    "end": 22576,
                                    "loc": {
                                      "start": {
                                        "line": 559,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 559,
                                        "column": 99
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 22493,
                                      "end": 22531,
                                      "loc": {
                                        "start": {
                                          "line": 559,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 559,
                                          "column": 54
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 22493,
                                        "end": 22527,
                                        "loc": {
                                          "start": {
                                            "line": 559,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 559,
                                            "column": 50
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 22493,
                                          "end": 22520,
                                          "loc": {
                                            "start": {
                                              "line": 559,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 559,
                                              "column": 43
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 22493,
                                            "end": 22511,
                                            "loc": {
                                              "start": {
                                                "line": 559,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 559,
                                                "column": 34
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 22493,
                                              "end": 22502,
                                              "loc": {
                                                "start": {
                                                  "line": 559,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 559,
                                                  "column": 25
                                                }
                                              },
                                              "object": {
                                                "type": "ThisExpression",
                                                "start": 22493,
                                                "end": 22497,
                                                "loc": {
                                                  "start": {
                                                    "line": 559,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 559,
                                                    "column": 20
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 22498,
                                                "end": 22502,
                                                "loc": {
                                                  "start": {
                                                    "line": 559,
                                                    "column": 21
                                                  },
                                                  "end": {
                                                    "line": 559,
                                                    "column": 25
                                                  }
                                                },
                                                "name": "mesh"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 22503,
                                              "end": 22511,
                                              "loc": {
                                                "start": {
                                                  "line": 559,
                                                  "column": 26
                                                },
                                                "end": {
                                                  "line": 559,
                                                  "column": 34
                                                }
                                              },
                                              "name": "geometry"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 22512,
                                            "end": 22520,
                                            "loc": {
                                              "start": {
                                                "line": 559,
                                                "column": 35
                                              },
                                              "end": {
                                                "line": 559,
                                                "column": 43
                                              }
                                            },
                                            "name": "vertices"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "BinaryExpression",
                                          "start": 22521,
                                          "end": 22526,
                                          "loc": {
                                            "start": {
                                              "line": 559,
                                              "column": 44
                                            },
                                            "end": {
                                              "line": 559,
                                              "column": 49
                                            }
                                          },
                                          "left": {
                                            "type": "BinaryExpression",
                                            "start": 22521,
                                            "end": 22524,
                                            "loc": {
                                              "start": {
                                                "line": 559,
                                                "column": 44
                                              },
                                              "end": {
                                                "line": 559,
                                                "column": 47
                                              }
                                            },
                                            "left": {
                                              "type": "Literal",
                                              "start": 22521,
                                              "end": 22522,
                                              "loc": {
                                                "start": {
                                                  "line": 559,
                                                  "column": 44
                                                },
                                                "end": {
                                                  "line": 559,
                                                  "column": 45
                                                }
                                              },
                                              "value": 2,
                                              "rawValue": 2,
                                              "raw": "2"
                                            },
                                            "operator": "*",
                                            "right": {
                                              "type": "Identifier",
                                              "start": 22523,
                                              "end": 22524,
                                              "loc": {
                                                "start": {
                                                  "line": 559,
                                                  "column": 46
                                                },
                                                "end": {
                                                  "line": 559,
                                                  "column": 47
                                                }
                                              },
                                              "name": "i"
                                            }
                                          },
                                          "operator": "+",
                                          "right": {
                                            "type": "Literal",
                                            "start": 22525,
                                            "end": 22526,
                                            "loc": {
                                              "start": {
                                                "line": 559,
                                                "column": 48
                                              },
                                              "end": {
                                                "line": 559,
                                                "column": 49
                                              }
                                            },
                                            "value": 1,
                                            "rawValue": 1,
                                            "raw": "1"
                                          }
                                        },
                                        "computed": true
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 22528,
                                        "end": 22531,
                                        "loc": {
                                          "start": {
                                            "line": 559,
                                            "column": 51
                                          },
                                          "end": {
                                            "line": 559,
                                            "column": 54
                                          }
                                        },
                                        "name": "set"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "BinaryExpression",
                                        "start": 22532,
                                        "end": 22550,
                                        "loc": {
                                          "start": {
                                            "line": 559,
                                            "column": 55
                                          },
                                          "end": {
                                            "line": 559,
                                            "column": 73
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 22532,
                                          "end": 22543,
                                          "loc": {
                                            "start": {
                                              "line": 559,
                                              "column": 55
                                            },
                                            "end": {
                                              "line": 559,
                                              "column": 66
                                            }
                                          },
                                          "name": "innerRadius"
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 22546,
                                          "end": 22550,
                                          "loc": {
                                            "start": {
                                              "line": 559,
                                              "column": 69
                                            },
                                            "end": {
                                              "line": 559,
                                              "column": 73
                                            }
                                          },
                                          "name": "dirX"
                                        }
                                      },
                                      {
                                        "type": "BinaryExpression",
                                        "start": 22552,
                                        "end": 22570,
                                        "loc": {
                                          "start": {
                                            "line": 559,
                                            "column": 75
                                          },
                                          "end": {
                                            "line": 559,
                                            "column": 93
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 22552,
                                          "end": 22563,
                                          "loc": {
                                            "start": {
                                              "line": 559,
                                              "column": 75
                                            },
                                            "end": {
                                              "line": 559,
                                              "column": 86
                                            }
                                          },
                                          "name": "innerRadius"
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 22566,
                                          "end": 22570,
                                          "loc": {
                                            "start": {
                                              "line": 559,
                                              "column": 89
                                            },
                                            "end": {
                                              "line": 559,
                                              "column": 93
                                            }
                                          },
                                          "name": "dirY"
                                        }
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 22572,
                                        "end": 22575,
                                        "loc": {
                                          "start": {
                                            "line": 559,
                                            "column": 95
                                          },
                                          "end": {
                                            "line": 559,
                                            "column": 98
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0.0"
                                      }
                                    ]
                                  }
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 22606,
                            "end": 22651,
                            "loc": {
                              "start": {
                                "line": 561,
                                "column": 12
                              },
                              "end": {
                                "line": 561,
                                "column": 57
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 22606,
                              "end": 22650,
                              "loc": {
                                "start": {
                                  "line": 561,
                                  "column": 12
                                },
                                "end": {
                                  "line": 561,
                                  "column": 56
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 22606,
                                "end": 22643,
                                "loc": {
                                  "start": {
                                    "line": 561,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 561,
                                    "column": 49
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 22606,
                                  "end": 22624,
                                  "loc": {
                                    "start": {
                                      "line": 561,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 561,
                                      "column": 30
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 22606,
                                    "end": 22615,
                                    "loc": {
                                      "start": {
                                        "line": 561,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 561,
                                        "column": 21
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 22606,
                                      "end": 22610,
                                      "loc": {
                                        "start": {
                                          "line": 561,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 561,
                                          "column": 16
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 22611,
                                      "end": 22615,
                                      "loc": {
                                        "start": {
                                          "line": 561,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 561,
                                          "column": 21
                                        }
                                      },
                                      "name": "mesh"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 22616,
                                    "end": 22624,
                                    "loc": {
                                      "start": {
                                        "line": 561,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 561,
                                        "column": 30
                                      }
                                    },
                                    "name": "geometry"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 22625,
                                  "end": 22643,
                                  "loc": {
                                    "start": {
                                      "line": 561,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 561,
                                      "column": 49
                                    }
                                  },
                                  "name": "verticesNeedUpdate"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "Literal",
                                "start": 22646,
                                "end": 22650,
                                "loc": {
                                  "start": {
                                    "line": 561,
                                    "column": 52
                                  },
                                  "end": {
                                    "line": 561,
                                    "column": 56
                                  }
                                },
                                "value": true,
                                "rawValue": true,
                                "raw": "true"
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 22665,
                            "end": 22705,
                            "loc": {
                              "start": {
                                "line": 562,
                                "column": 12
                              },
                              "end": {
                                "line": 562,
                                "column": 52
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 22665,
                              "end": 22704,
                              "loc": {
                                "start": {
                                  "line": 562,
                                  "column": 12
                                },
                                "end": {
                                  "line": 562,
                                  "column": 51
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 22665,
                                "end": 22702,
                                "loc": {
                                  "start": {
                                    "line": 562,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 562,
                                    "column": 49
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 22665,
                                  "end": 22683,
                                  "loc": {
                                    "start": {
                                      "line": 562,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 562,
                                      "column": 30
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 22665,
                                    "end": 22674,
                                    "loc": {
                                      "start": {
                                        "line": 562,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 562,
                                        "column": 21
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 22665,
                                      "end": 22669,
                                      "loc": {
                                        "start": {
                                          "line": 562,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 562,
                                          "column": 16
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 22670,
                                      "end": 22674,
                                      "loc": {
                                        "start": {
                                          "line": 562,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 562,
                                          "column": 21
                                        }
                                      },
                                      "name": "mesh"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 22675,
                                    "end": 22683,
                                    "loc": {
                                      "start": {
                                        "line": 562,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 562,
                                        "column": 30
                                      }
                                    },
                                    "name": "geometry"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 22684,
                                  "end": 22702,
                                  "loc": {
                                    "start": {
                                      "line": 562,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 562,
                                      "column": 49
                                    }
                                  },
                                  "name": "computeBoundingBox"
                                },
                                "computed": false
                              },
                              "arguments": []
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 22719,
                            "end": 22762,
                            "loc": {
                              "start": {
                                "line": 563,
                                "column": 12
                              },
                              "end": {
                                "line": 563,
                                "column": 55
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 22719,
                              "end": 22761,
                              "loc": {
                                "start": {
                                  "line": 563,
                                  "column": 12
                                },
                                "end": {
                                  "line": 563,
                                  "column": 54
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 22719,
                                "end": 22759,
                                "loc": {
                                  "start": {
                                    "line": 563,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 563,
                                    "column": 52
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 22719,
                                  "end": 22737,
                                  "loc": {
                                    "start": {
                                      "line": 563,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 563,
                                      "column": 30
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 22719,
                                    "end": 22728,
                                    "loc": {
                                      "start": {
                                        "line": 563,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 563,
                                        "column": 21
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 22719,
                                      "end": 22723,
                                      "loc": {
                                        "start": {
                                          "line": 563,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 563,
                                          "column": 16
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 22724,
                                      "end": 22728,
                                      "loc": {
                                        "start": {
                                          "line": 563,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 563,
                                          "column": 21
                                        }
                                      },
                                      "name": "mesh"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 22729,
                                    "end": 22737,
                                    "loc": {
                                      "start": {
                                        "line": 563,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 563,
                                        "column": 30
                                      }
                                    },
                                    "name": "geometry"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 22738,
                                  "end": 22759,
                                  "loc": {
                                    "start": {
                                      "line": 563,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 563,
                                      "column": 52
                                    }
                                  },
                                  "name": "computeBoundingSphere"
                                },
                                "computed": false
                              },
                              "arguments": []
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 22776,
                            "end": 22818,
                            "loc": {
                              "start": {
                                "line": 564,
                                "column": 12
                              },
                              "end": {
                                "line": 564,
                                "column": 54
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 22776,
                              "end": 22817,
                              "loc": {
                                "start": {
                                  "line": 564,
                                  "column": 12
                                },
                                "end": {
                                  "line": 564,
                                  "column": 53
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 22776,
                                "end": 22805,
                                "loc": {
                                  "start": {
                                    "line": 564,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 564,
                                    "column": 41
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 22776,
                                  "end": 22794,
                                  "loc": {
                                    "start": {
                                      "line": 564,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 564,
                                      "column": 30
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 22776,
                                    "end": 22785,
                                    "loc": {
                                      "start": {
                                        "line": 564,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 564,
                                        "column": 21
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 22776,
                                      "end": 22780,
                                      "loc": {
                                        "start": {
                                          "line": 564,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 564,
                                          "column": 16
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 22781,
                                      "end": 22785,
                                      "loc": {
                                        "start": {
                                          "line": 564,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 564,
                                          "column": 21
                                        }
                                      },
                                      "name": "mesh"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 22786,
                                    "end": 22794,
                                    "loc": {
                                      "start": {
                                        "line": 564,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 564,
                                        "column": 30
                                      }
                                    },
                                    "name": "geometry"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 22795,
                                  "end": 22805,
                                  "loc": {
                                    "start": {
                                      "line": 564,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 564,
                                      "column": 41
                                    }
                                  },
                                  "name": "parameters"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "Identifier",
                                "start": 22808,
                                "end": 22817,
                                "loc": {
                                  "start": {
                                    "line": 564,
                                    "column": 44
                                  },
                                  "end": {
                                    "line": 564,
                                    "column": 53
                                  }
                                },
                                "name": "newParams"
                              }
                            }
                          }
                        ]
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 22839,
                      "end": 22890,
                      "loc": {
                        "start": {
                          "line": 566,
                          "column": 8
                        },
                        "end": {
                          "line": 566,
                          "column": 59
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 22839,
                        "end": 22889,
                        "loc": {
                          "start": {
                            "line": 566,
                            "column": 8
                          },
                          "end": {
                            "line": 566,
                            "column": 58
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 22839,
                          "end": 22862,
                          "loc": {
                            "start": {
                              "line": 566,
                              "column": 8
                            },
                            "end": {
                              "line": 566,
                              "column": 31
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 22839,
                            "end": 22857,
                            "loc": {
                              "start": {
                                "line": 566,
                                "column": 8
                              },
                              "end": {
                                "line": 566,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 22839,
                              "end": 22848,
                              "loc": {
                                "start": {
                                  "line": 566,
                                  "column": 8
                                },
                                "end": {
                                  "line": 566,
                                  "column": 17
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 22839,
                                "end": 22843,
                                "loc": {
                                  "start": {
                                    "line": 566,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 566,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 22844,
                                "end": 22848,
                                "loc": {
                                  "start": {
                                    "line": 566,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 566,
                                    "column": 17
                                  }
                                },
                                "name": "mesh"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 22849,
                              "end": 22857,
                              "loc": {
                                "start": {
                                  "line": 566,
                                  "column": 18
                                },
                                "end": {
                                  "line": 566,
                                  "column": 26
                                }
                              },
                              "name": "position"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 22858,
                            "end": 22862,
                            "loc": {
                              "start": {
                                "line": 566,
                                "column": 27
                              },
                              "end": {
                                "line": 566,
                                "column": 31
                              }
                            },
                            "name": "copy"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 22863,
                            "end": 22888,
                            "loc": {
                              "start": {
                                "line": 566,
                                "column": 32
                              },
                              "end": {
                                "line": 566,
                                "column": 57
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 22863,
                              "end": 22879,
                              "loc": {
                                "start": {
                                  "line": 566,
                                  "column": 32
                                },
                                "end": {
                                  "line": 566,
                                  "column": 48
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 22863,
                                "end": 22867,
                                "loc": {
                                  "start": {
                                    "line": 566,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 566,
                                    "column": 36
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 22868,
                                "end": 22879,
                                "loc": {
                                  "start": {
                                    "line": 566,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 566,
                                    "column": 48
                                  }
                                },
                                "name": "centerPoint"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 22880,
                              "end": 22888,
                              "loc": {
                                "start": {
                                  "line": 566,
                                  "column": 49
                                },
                                "end": {
                                  "line": 566,
                                  "column": 57
                                }
                              },
                              "name": "position"
                            },
                            "computed": false
                          }
                        ]
                      }
                    },
                    {
                      "type": "IfStatement",
                      "start": 22900,
                      "end": 22963,
                      "loc": {
                        "start": {
                          "line": 567,
                          "column": 8
                        },
                        "end": {
                          "line": 567,
                          "column": 71
                        }
                      },
                      "test": {
                        "type": "MemberExpression",
                        "start": 22904,
                        "end": 22930,
                        "loc": {
                          "start": {
                            "line": 567,
                            "column": 12
                          },
                          "end": {
                            "line": 567,
                            "column": 38
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 22904,
                          "end": 22908,
                          "loc": {
                            "start": {
                              "line": 567,
                              "column": 12
                            },
                            "end": {
                              "line": 567,
                              "column": 16
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 22909,
                          "end": 22930,
                          "loc": {
                            "start": {
                              "line": 567,
                              "column": 17
                            },
                            "end": {
                              "line": 567,
                              "column": 38
                            }
                          },
                          "name": "auxiliaryConstruction"
                        },
                        "computed": false
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 22932,
                        "end": 22963,
                        "loc": {
                          "start": {
                            "line": 567,
                            "column": 40
                          },
                          "end": {
                            "line": 567,
                            "column": 71
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 22932,
                          "end": 22962,
                          "loc": {
                            "start": {
                              "line": 567,
                              "column": 40
                            },
                            "end": {
                              "line": 567,
                              "column": 70
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 22932,
                            "end": 22960,
                            "loc": {
                              "start": {
                                "line": 567,
                                "column": 40
                              },
                              "end": {
                                "line": 567,
                                "column": 68
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 22932,
                              "end": 22936,
                              "loc": {
                                "start": {
                                  "line": 567,
                                  "column": 40
                                },
                                "end": {
                                  "line": 567,
                                  "column": 44
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 22937,
                              "end": 22960,
                              "loc": {
                                "start": {
                                  "line": 567,
                                  "column": 45
                                },
                                "end": {
                                  "line": 567,
                                  "column": 68
                                }
                              },
                              "name": "updateAuxiliaryGeometry"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      },
                      "alternate": null
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 22978,
              "end": 23245,
              "loc": {
                "start": {
                  "line": 570,
                  "column": 4
                },
                "end": {
                  "line": 577,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 22978,
                "end": 22986,
                "loc": {
                  "start": {
                    "line": 570,
                    "column": 4
                  },
                  "end": {
                    "line": 570,
                    "column": 12
                  }
                },
                "name": "getState"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 22986,
                "end": 23245,
                "loc": {
                  "start": {
                    "line": 570,
                    "column": 12
                  },
                  "end": {
                    "line": 577,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 22989,
                  "end": 23245,
                  "loc": {
                    "start": {
                      "line": 570,
                      "column": 15
                    },
                    "end": {
                      "line": 577,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 23000,
                      "end": 23238,
                      "loc": {
                        "start": {
                          "line": 571,
                          "column": 8
                        },
                        "end": {
                          "line": 576,
                          "column": 11
                        }
                      },
                      "argument": {
                        "type": "NewExpression",
                        "start": 23007,
                        "end": 23237,
                        "loc": {
                          "start": {
                            "line": 571,
                            "column": 15
                          },
                          "end": {
                            "line": 576,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "Identifier",
                          "start": 23011,
                          "end": 23014,
                          "loc": {
                            "start": {
                              "line": 571,
                              "column": 19
                            },
                            "end": {
                              "line": 571,
                              "column": 22
                            }
                          },
                          "name": "Map"
                        },
                        "arguments": [
                          {
                            "type": "ArrayExpression",
                            "start": 23015,
                            "end": 23236,
                            "loc": {
                              "start": {
                                "line": 571,
                                "column": 23
                              },
                              "end": {
                                "line": 576,
                                "column": 9
                              }
                            },
                            "elements": [
                              {
                                "type": "ArrayExpression",
                                "start": 23030,
                                "end": 23071,
                                "loc": {
                                  "start": {
                                    "line": 572,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 572,
                                    "column": 53
                                  }
                                },
                                "elements": [
                                  {
                                    "type": "Literal",
                                    "start": 23031,
                                    "end": 23043,
                                    "loc": {
                                      "start": {
                                        "line": 572,
                                        "column": 13
                                      },
                                      "end": {
                                        "line": 572,
                                        "column": 25
                                      }
                                    },
                                    "value": "startPoint",
                                    "rawValue": "startPoint",
                                    "raw": "'startPoint'"
                                  },
                                  {
                                    "type": "CallExpression",
                                    "start": 23045,
                                    "end": 23070,
                                    "loc": {
                                      "start": {
                                        "line": 572,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 572,
                                        "column": 52
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 23045,
                                      "end": 23068,
                                      "loc": {
                                        "start": {
                                          "line": 572,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 572,
                                          "column": 50
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 23045,
                                        "end": 23059,
                                        "loc": {
                                          "start": {
                                            "line": 572,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 572,
                                            "column": 41
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 23045,
                                          "end": 23056,
                                          "loc": {
                                            "start": {
                                              "line": 572,
                                              "column": 27
                                            },
                                            "end": {
                                              "line": 572,
                                              "column": 38
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 23045,
                                            "end": 23049,
                                            "loc": {
                                              "start": {
                                                "line": 572,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 572,
                                                "column": 31
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 23050,
                                            "end": 23056,
                                            "loc": {
                                              "start": {
                                                "line": 572,
                                                "column": 32
                                              },
                                              "end": {
                                                "line": 572,
                                                "column": 38
                                              }
                                            },
                                            "name": "points"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Literal",
                                          "start": 23057,
                                          "end": 23058,
                                          "loc": {
                                            "start": {
                                              "line": 572,
                                              "column": 39
                                            },
                                            "end": {
                                              "line": 572,
                                              "column": 40
                                            }
                                          },
                                          "value": 0,
                                          "rawValue": 0,
                                          "raw": "0"
                                        },
                                        "computed": true
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 23060,
                                        "end": 23068,
                                        "loc": {
                                          "start": {
                                            "line": 572,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 572,
                                            "column": 50
                                          }
                                        },
                                        "name": "getState"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                ]
                              },
                              {
                                "type": "ArrayExpression",
                                "start": 23086,
                                "end": 23125,
                                "loc": {
                                  "start": {
                                    "line": 573,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 573,
                                    "column": 51
                                  }
                                },
                                "elements": [
                                  {
                                    "type": "Literal",
                                    "start": 23087,
                                    "end": 23097,
                                    "loc": {
                                      "start": {
                                        "line": 573,
                                        "column": 13
                                      },
                                      "end": {
                                        "line": 573,
                                        "column": 23
                                      }
                                    },
                                    "value": "endPoint",
                                    "rawValue": "endPoint",
                                    "raw": "'endPoint'"
                                  },
                                  {
                                    "type": "CallExpression",
                                    "start": 23099,
                                    "end": 23124,
                                    "loc": {
                                      "start": {
                                        "line": 573,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 573,
                                        "column": 50
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 23099,
                                      "end": 23122,
                                      "loc": {
                                        "start": {
                                          "line": 573,
                                          "column": 25
                                        },
                                        "end": {
                                          "line": 573,
                                          "column": 48
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 23099,
                                        "end": 23113,
                                        "loc": {
                                          "start": {
                                            "line": 573,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 573,
                                            "column": 39
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 23099,
                                          "end": 23110,
                                          "loc": {
                                            "start": {
                                              "line": 573,
                                              "column": 25
                                            },
                                            "end": {
                                              "line": 573,
                                              "column": 36
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 23099,
                                            "end": 23103,
                                            "loc": {
                                              "start": {
                                                "line": 573,
                                                "column": 25
                                              },
                                              "end": {
                                                "line": 573,
                                                "column": 29
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 23104,
                                            "end": 23110,
                                            "loc": {
                                              "start": {
                                                "line": 573,
                                                "column": 30
                                              },
                                              "end": {
                                                "line": 573,
                                                "column": 36
                                              }
                                            },
                                            "name": "points"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Literal",
                                          "start": 23111,
                                          "end": 23112,
                                          "loc": {
                                            "start": {
                                              "line": 573,
                                              "column": 37
                                            },
                                            "end": {
                                              "line": 573,
                                              "column": 38
                                            }
                                          },
                                          "value": 1,
                                          "rawValue": 1,
                                          "raw": "1"
                                        },
                                        "computed": true
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 23114,
                                        "end": 23122,
                                        "loc": {
                                          "start": {
                                            "line": 573,
                                            "column": 40
                                          },
                                          "end": {
                                            "line": 573,
                                            "column": 48
                                          }
                                        },
                                        "name": "getState"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                ]
                              },
                              {
                                "type": "ArrayExpression",
                                "start": 23140,
                                "end": 23179,
                                "loc": {
                                  "start": {
                                    "line": 574,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 574,
                                    "column": 51
                                  }
                                },
                                "elements": [
                                  {
                                    "type": "Literal",
                                    "start": 23141,
                                    "end": 23149,
                                    "loc": {
                                      "start": {
                                        "line": 574,
                                        "column": 13
                                      },
                                      "end": {
                                        "line": 574,
                                        "column": 21
                                      }
                                    },
                                    "value": "center",
                                    "rawValue": "center",
                                    "raw": "'center'"
                                  },
                                  {
                                    "type": "CallExpression",
                                    "start": 23151,
                                    "end": 23178,
                                    "loc": {
                                      "start": {
                                        "line": 574,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 574,
                                        "column": 50
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 23151,
                                      "end": 23176,
                                      "loc": {
                                        "start": {
                                          "line": 574,
                                          "column": 23
                                        },
                                        "end": {
                                          "line": 574,
                                          "column": 48
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 23151,
                                        "end": 23167,
                                        "loc": {
                                          "start": {
                                            "line": 574,
                                            "column": 23
                                          },
                                          "end": {
                                            "line": 574,
                                            "column": 39
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 23151,
                                          "end": 23155,
                                          "loc": {
                                            "start": {
                                              "line": 574,
                                              "column": 23
                                            },
                                            "end": {
                                              "line": 574,
                                              "column": 27
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 23156,
                                          "end": 23167,
                                          "loc": {
                                            "start": {
                                              "line": 574,
                                              "column": 28
                                            },
                                            "end": {
                                              "line": 574,
                                              "column": 39
                                            }
                                          },
                                          "name": "centerPoint"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 23168,
                                        "end": 23176,
                                        "loc": {
                                          "start": {
                                            "line": 574,
                                            "column": 40
                                          },
                                          "end": {
                                            "line": 574,
                                            "column": 48
                                          }
                                        },
                                        "name": "getState"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                ]
                              },
                              {
                                "type": "ArrayExpression",
                                "start": 23194,
                                "end": 23224,
                                "loc": {
                                  "start": {
                                    "line": 575,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 575,
                                    "column": 42
                                  }
                                },
                                "elements": [
                                  {
                                    "type": "Literal",
                                    "start": 23195,
                                    "end": 23206,
                                    "loc": {
                                      "start": {
                                        "line": 575,
                                        "column": 13
                                      },
                                      "end": {
                                        "line": 575,
                                        "column": 24
                                      }
                                    },
                                    "value": "clockwise",
                                    "rawValue": "clockwise",
                                    "raw": "'clockwise'"
                                  },
                                  {
                                    "type": "UnaryExpression",
                                    "start": 23208,
                                    "end": 23223,
                                    "loc": {
                                      "start": {
                                        "line": 575,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 575,
                                        "column": 41
                                      }
                                    },
                                    "operator": "+",
                                    "prefix": true,
                                    "argument": {
                                      "type": "MemberExpression",
                                      "start": 23209,
                                      "end": 23223,
                                      "loc": {
                                        "start": {
                                          "line": 575,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 575,
                                          "column": 41
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 23209,
                                        "end": 23213,
                                        "loc": {
                                          "start": {
                                            "line": 575,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 575,
                                            "column": 31
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 23214,
                                        "end": 23223,
                                        "loc": {
                                          "start": {
                                            "line": 575,
                                            "column": 32
                                          },
                                          "end": {
                                            "line": 575,
                                            "column": 41
                                          }
                                        },
                                        "name": "clockwise"
                                      },
                                      "computed": false
                                    }
                                  }
                                ]
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 23253,
              "end": 23760,
              "loc": {
                "start": {
                  "line": 579,
                  "column": 4
                },
                "end": {
                  "line": 589,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 23253,
                "end": 23267,
                "loc": {
                  "start": {
                    "line": 579,
                    "column": 4
                  },
                  "end": {
                    "line": 579,
                    "column": 18
                  }
                },
                "name": "applyStateDiff"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 23267,
                "end": 23760,
                "loc": {
                  "start": {
                    "line": 579,
                    "column": 18
                  },
                  "end": {
                    "line": 589,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 23268,
                    "end": 23277,
                    "loc": {
                      "start": {
                        "line": 579,
                        "column": 19
                      },
                      "end": {
                        "line": 579,
                        "column": 28
                      }
                    },
                    "name": "stateDiff"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 23279,
                  "end": 23760,
                  "loc": {
                    "start": {
                      "line": 579,
                      "column": 30
                    },
                    "end": {
                      "line": 589,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 23290,
                      "end": 23395,
                      "loc": {
                        "start": {
                          "line": 580,
                          "column": 8
                        },
                        "end": {
                          "line": 581,
                          "column": 71
                        }
                      },
                      "test": {
                        "type": "CallExpression",
                        "start": 23294,
                        "end": 23321,
                        "loc": {
                          "start": {
                            "line": 580,
                            "column": 12
                          },
                          "end": {
                            "line": 580,
                            "column": 39
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 23294,
                          "end": 23307,
                          "loc": {
                            "start": {
                              "line": 580,
                              "column": 12
                            },
                            "end": {
                              "line": 580,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 23294,
                            "end": 23303,
                            "loc": {
                              "start": {
                                "line": 580,
                                "column": 12
                              },
                              "end": {
                                "line": 580,
                                "column": 21
                              }
                            },
                            "name": "stateDiff"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 23304,
                            "end": 23307,
                            "loc": {
                              "start": {
                                "line": 580,
                                "column": 22
                              },
                              "end": {
                                "line": 580,
                                "column": 25
                              }
                            },
                            "name": "has"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 23308,
                            "end": 23320,
                            "loc": {
                              "start": {
                                "line": 580,
                                "column": 26
                              },
                              "end": {
                                "line": 580,
                                "column": 38
                              }
                            },
                            "value": "startPoint",
                            "rawValue": "startPoint",
                            "raw": "'startPoint'"
                          }
                        ]
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 23336,
                        "end": 23395,
                        "loc": {
                          "start": {
                            "line": 581,
                            "column": 12
                          },
                          "end": {
                            "line": 581,
                            "column": 71
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 23336,
                          "end": 23394,
                          "loc": {
                            "start": {
                              "line": 581,
                              "column": 12
                            },
                            "end": {
                              "line": 581,
                              "column": 70
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 23336,
                            "end": 23365,
                            "loc": {
                              "start": {
                                "line": 581,
                                "column": 12
                              },
                              "end": {
                                "line": 581,
                                "column": 41
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 23336,
                              "end": 23350,
                              "loc": {
                                "start": {
                                  "line": 581,
                                  "column": 12
                                },
                                "end": {
                                  "line": 581,
                                  "column": 26
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 23336,
                                "end": 23347,
                                "loc": {
                                  "start": {
                                    "line": 581,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 581,
                                    "column": 23
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 23336,
                                  "end": 23340,
                                  "loc": {
                                    "start": {
                                      "line": 581,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 581,
                                      "column": 16
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 23341,
                                  "end": 23347,
                                  "loc": {
                                    "start": {
                                      "line": 581,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 581,
                                      "column": 23
                                    }
                                  },
                                  "name": "points"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Literal",
                                "start": 23348,
                                "end": 23349,
                                "loc": {
                                  "start": {
                                    "line": 581,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 581,
                                    "column": 25
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0"
                              },
                              "computed": true
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 23351,
                              "end": 23365,
                              "loc": {
                                "start": {
                                  "line": 581,
                                  "column": 27
                                },
                                "end": {
                                  "line": 581,
                                  "column": 41
                                }
                              },
                              "name": "applyStateDiff"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "CallExpression",
                              "start": 23366,
                              "end": 23393,
                              "loc": {
                                "start": {
                                  "line": 581,
                                  "column": 42
                                },
                                "end": {
                                  "line": 581,
                                  "column": 69
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 23366,
                                "end": 23379,
                                "loc": {
                                  "start": {
                                    "line": 581,
                                    "column": 42
                                  },
                                  "end": {
                                    "line": 581,
                                    "column": 55
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 23366,
                                  "end": 23375,
                                  "loc": {
                                    "start": {
                                      "line": 581,
                                      "column": 42
                                    },
                                    "end": {
                                      "line": 581,
                                      "column": 51
                                    }
                                  },
                                  "name": "stateDiff"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 23376,
                                  "end": 23379,
                                  "loc": {
                                    "start": {
                                      "line": 581,
                                      "column": 52
                                    },
                                    "end": {
                                      "line": 581,
                                      "column": 55
                                    }
                                  },
                                  "name": "get"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 23380,
                                  "end": 23392,
                                  "loc": {
                                    "start": {
                                      "line": 581,
                                      "column": 56
                                    },
                                    "end": {
                                      "line": 581,
                                      "column": 68
                                    }
                                  },
                                  "value": "startPoint",
                                  "rawValue": "startPoint",
                                  "raw": "'startPoint'"
                                }
                              ]
                            }
                          ]
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 23405,
                      "end": 23506,
                      "loc": {
                        "start": {
                          "line": 582,
                          "column": 8
                        },
                        "end": {
                          "line": 583,
                          "column": 69
                        }
                      },
                      "test": {
                        "type": "CallExpression",
                        "start": 23409,
                        "end": 23434,
                        "loc": {
                          "start": {
                            "line": 582,
                            "column": 12
                          },
                          "end": {
                            "line": 582,
                            "column": 37
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 23409,
                          "end": 23422,
                          "loc": {
                            "start": {
                              "line": 582,
                              "column": 12
                            },
                            "end": {
                              "line": 582,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 23409,
                            "end": 23418,
                            "loc": {
                              "start": {
                                "line": 582,
                                "column": 12
                              },
                              "end": {
                                "line": 582,
                                "column": 21
                              }
                            },
                            "name": "stateDiff"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 23419,
                            "end": 23422,
                            "loc": {
                              "start": {
                                "line": 582,
                                "column": 22
                              },
                              "end": {
                                "line": 582,
                                "column": 25
                              }
                            },
                            "name": "has"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 23423,
                            "end": 23433,
                            "loc": {
                              "start": {
                                "line": 582,
                                "column": 26
                              },
                              "end": {
                                "line": 582,
                                "column": 36
                              }
                            },
                            "value": "endPoint",
                            "rawValue": "endPoint",
                            "raw": "'endPoint'"
                          }
                        ]
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 23449,
                        "end": 23506,
                        "loc": {
                          "start": {
                            "line": 583,
                            "column": 12
                          },
                          "end": {
                            "line": 583,
                            "column": 69
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 23449,
                          "end": 23505,
                          "loc": {
                            "start": {
                              "line": 583,
                              "column": 12
                            },
                            "end": {
                              "line": 583,
                              "column": 68
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 23449,
                            "end": 23478,
                            "loc": {
                              "start": {
                                "line": 583,
                                "column": 12
                              },
                              "end": {
                                "line": 583,
                                "column": 41
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 23449,
                              "end": 23463,
                              "loc": {
                                "start": {
                                  "line": 583,
                                  "column": 12
                                },
                                "end": {
                                  "line": 583,
                                  "column": 26
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 23449,
                                "end": 23460,
                                "loc": {
                                  "start": {
                                    "line": 583,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 583,
                                    "column": 23
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 23449,
                                  "end": 23453,
                                  "loc": {
                                    "start": {
                                      "line": 583,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 583,
                                      "column": 16
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 23454,
                                  "end": 23460,
                                  "loc": {
                                    "start": {
                                      "line": 583,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 583,
                                      "column": 23
                                    }
                                  },
                                  "name": "points"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Literal",
                                "start": 23461,
                                "end": 23462,
                                "loc": {
                                  "start": {
                                    "line": 583,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 583,
                                    "column": 25
                                  }
                                },
                                "value": 1,
                                "rawValue": 1,
                                "raw": "1"
                              },
                              "computed": true
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 23464,
                              "end": 23478,
                              "loc": {
                                "start": {
                                  "line": 583,
                                  "column": 27
                                },
                                "end": {
                                  "line": 583,
                                  "column": 41
                                }
                              },
                              "name": "applyStateDiff"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "CallExpression",
                              "start": 23479,
                              "end": 23504,
                              "loc": {
                                "start": {
                                  "line": 583,
                                  "column": 42
                                },
                                "end": {
                                  "line": 583,
                                  "column": 67
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 23479,
                                "end": 23492,
                                "loc": {
                                  "start": {
                                    "line": 583,
                                    "column": 42
                                  },
                                  "end": {
                                    "line": 583,
                                    "column": 55
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 23479,
                                  "end": 23488,
                                  "loc": {
                                    "start": {
                                      "line": 583,
                                      "column": 42
                                    },
                                    "end": {
                                      "line": 583,
                                      "column": 51
                                    }
                                  },
                                  "name": "stateDiff"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 23489,
                                  "end": 23492,
                                  "loc": {
                                    "start": {
                                      "line": 583,
                                      "column": 52
                                    },
                                    "end": {
                                      "line": 583,
                                      "column": 55
                                    }
                                  },
                                  "name": "get"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 23493,
                                  "end": 23503,
                                  "loc": {
                                    "start": {
                                      "line": 583,
                                      "column": 56
                                    },
                                    "end": {
                                      "line": 583,
                                      "column": 66
                                    }
                                  },
                                  "value": "endPoint",
                                  "rawValue": "endPoint",
                                  "raw": "'endPoint'"
                                }
                              ]
                            }
                          ]
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 23516,
                      "end": 23615,
                      "loc": {
                        "start": {
                          "line": 584,
                          "column": 8
                        },
                        "end": {
                          "line": 585,
                          "column": 69
                        }
                      },
                      "test": {
                        "type": "CallExpression",
                        "start": 23520,
                        "end": 23543,
                        "loc": {
                          "start": {
                            "line": 584,
                            "column": 12
                          },
                          "end": {
                            "line": 584,
                            "column": 35
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 23520,
                          "end": 23533,
                          "loc": {
                            "start": {
                              "line": 584,
                              "column": 12
                            },
                            "end": {
                              "line": 584,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 23520,
                            "end": 23529,
                            "loc": {
                              "start": {
                                "line": 584,
                                "column": 12
                              },
                              "end": {
                                "line": 584,
                                "column": 21
                              }
                            },
                            "name": "stateDiff"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 23530,
                            "end": 23533,
                            "loc": {
                              "start": {
                                "line": 584,
                                "column": 22
                              },
                              "end": {
                                "line": 584,
                                "column": 25
                              }
                            },
                            "name": "has"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 23534,
                            "end": 23542,
                            "loc": {
                              "start": {
                                "line": 584,
                                "column": 26
                              },
                              "end": {
                                "line": 584,
                                "column": 34
                              }
                            },
                            "value": "center",
                            "rawValue": "center",
                            "raw": "'center'"
                          }
                        ]
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 23558,
                        "end": 23615,
                        "loc": {
                          "start": {
                            "line": 585,
                            "column": 12
                          },
                          "end": {
                            "line": 585,
                            "column": 69
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 23558,
                          "end": 23614,
                          "loc": {
                            "start": {
                              "line": 585,
                              "column": 12
                            },
                            "end": {
                              "line": 585,
                              "column": 68
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 23558,
                            "end": 23589,
                            "loc": {
                              "start": {
                                "line": 585,
                                "column": 12
                              },
                              "end": {
                                "line": 585,
                                "column": 43
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 23558,
                              "end": 23574,
                              "loc": {
                                "start": {
                                  "line": 585,
                                  "column": 12
                                },
                                "end": {
                                  "line": 585,
                                  "column": 28
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 23558,
                                "end": 23562,
                                "loc": {
                                  "start": {
                                    "line": 585,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 585,
                                    "column": 16
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 23563,
                                "end": 23574,
                                "loc": {
                                  "start": {
                                    "line": 585,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 585,
                                    "column": 28
                                  }
                                },
                                "name": "centerPoint"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 23575,
                              "end": 23589,
                              "loc": {
                                "start": {
                                  "line": 585,
                                  "column": 29
                                },
                                "end": {
                                  "line": 585,
                                  "column": 43
                                }
                              },
                              "name": "applyStateDiff"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "CallExpression",
                              "start": 23590,
                              "end": 23613,
                              "loc": {
                                "start": {
                                  "line": 585,
                                  "column": 44
                                },
                                "end": {
                                  "line": 585,
                                  "column": 67
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 23590,
                                "end": 23603,
                                "loc": {
                                  "start": {
                                    "line": 585,
                                    "column": 44
                                  },
                                  "end": {
                                    "line": 585,
                                    "column": 57
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 23590,
                                  "end": 23599,
                                  "loc": {
                                    "start": {
                                      "line": 585,
                                      "column": 44
                                    },
                                    "end": {
                                      "line": 585,
                                      "column": 53
                                    }
                                  },
                                  "name": "stateDiff"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 23600,
                                  "end": 23603,
                                  "loc": {
                                    "start": {
                                      "line": 585,
                                      "column": 54
                                    },
                                    "end": {
                                      "line": 585,
                                      "column": 57
                                    }
                                  },
                                  "name": "get"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 23604,
                                  "end": 23612,
                                  "loc": {
                                    "start": {
                                      "line": 585,
                                      "column": 58
                                    },
                                    "end": {
                                      "line": 585,
                                      "column": 66
                                    }
                                  },
                                  "value": "center",
                                  "rawValue": "center",
                                  "raw": "'center'"
                                }
                              ]
                            }
                          ]
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 23625,
                      "end": 23721,
                      "loc": {
                        "start": {
                          "line": 586,
                          "column": 8
                        },
                        "end": {
                          "line": 587,
                          "column": 63
                        }
                      },
                      "test": {
                        "type": "CallExpression",
                        "start": 23629,
                        "end": 23655,
                        "loc": {
                          "start": {
                            "line": 586,
                            "column": 12
                          },
                          "end": {
                            "line": 586,
                            "column": 38
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 23629,
                          "end": 23642,
                          "loc": {
                            "start": {
                              "line": 586,
                              "column": 12
                            },
                            "end": {
                              "line": 586,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 23629,
                            "end": 23638,
                            "loc": {
                              "start": {
                                "line": 586,
                                "column": 12
                              },
                              "end": {
                                "line": 586,
                                "column": 21
                              }
                            },
                            "name": "stateDiff"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 23639,
                            "end": 23642,
                            "loc": {
                              "start": {
                                "line": 586,
                                "column": 22
                              },
                              "end": {
                                "line": 586,
                                "column": 25
                              }
                            },
                            "name": "has"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 23643,
                            "end": 23654,
                            "loc": {
                              "start": {
                                "line": 586,
                                "column": 26
                              },
                              "end": {
                                "line": 586,
                                "column": 37
                              }
                            },
                            "value": "clockwise",
                            "rawValue": "clockwise",
                            "raw": "'clockwise'"
                          }
                        ]
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 23670,
                        "end": 23721,
                        "loc": {
                          "start": {
                            "line": 587,
                            "column": 12
                          },
                          "end": {
                            "line": 587,
                            "column": 63
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 23670,
                          "end": 23720,
                          "loc": {
                            "start": {
                              "line": 587,
                              "column": 12
                            },
                            "end": {
                              "line": 587,
                              "column": 62
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "MemberExpression",
                            "start": 23670,
                            "end": 23684,
                            "loc": {
                              "start": {
                                "line": 587,
                                "column": 12
                              },
                              "end": {
                                "line": 587,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 23670,
                              "end": 23674,
                              "loc": {
                                "start": {
                                  "line": 587,
                                  "column": 12
                                },
                                "end": {
                                  "line": 587,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 23675,
                              "end": 23684,
                              "loc": {
                                "start": {
                                  "line": 587,
                                  "column": 17
                                },
                                "end": {
                                  "line": 587,
                                  "column": 26
                                }
                              },
                              "name": "clockwise"
                            },
                            "computed": false
                          },
                          "right": {
                            "type": "BinaryExpression",
                            "start": 23688,
                            "end": 23719,
                            "loc": {
                              "start": {
                                "line": 587,
                                "column": 30
                              },
                              "end": {
                                "line": 587,
                                "column": 61
                              }
                            },
                            "left": {
                              "type": "CallExpression",
                              "start": 23688,
                              "end": 23714,
                              "loc": {
                                "start": {
                                  "line": 587,
                                  "column": 30
                                },
                                "end": {
                                  "line": 587,
                                  "column": 56
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 23688,
                                "end": 23701,
                                "loc": {
                                  "start": {
                                    "line": 587,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 587,
                                    "column": 43
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 23688,
                                  "end": 23697,
                                  "loc": {
                                    "start": {
                                      "line": 587,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 587,
                                      "column": 39
                                    }
                                  },
                                  "name": "stateDiff"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 23698,
                                  "end": 23701,
                                  "loc": {
                                    "start": {
                                      "line": 587,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 587,
                                      "column": 43
                                    }
                                  },
                                  "name": "get"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 23702,
                                  "end": 23713,
                                  "loc": {
                                    "start": {
                                      "line": 587,
                                      "column": 44
                                    },
                                    "end": {
                                      "line": 587,
                                      "column": 55
                                    }
                                  },
                                  "value": "clockwise",
                                  "rawValue": "clockwise",
                                  "raw": "'clockwise'"
                                }
                              ]
                            },
                            "operator": "!=",
                            "right": {
                              "type": "Literal",
                              "start": 23718,
                              "end": 23719,
                              "loc": {
                                "start": {
                                  "line": 587,
                                  "column": 60
                                },
                                "end": {
                                  "line": 587,
                                  "column": 61
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            },
                            "parenthesizedExpression": true
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 23731,
                      "end": 23753,
                      "loc": {
                        "start": {
                          "line": 588,
                          "column": 8
                        },
                        "end": {
                          "line": 588,
                          "column": 30
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 23731,
                        "end": 23752,
                        "loc": {
                          "start": {
                            "line": 588,
                            "column": 8
                          },
                          "end": {
                            "line": 588,
                            "column": 29
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 23731,
                          "end": 23750,
                          "loc": {
                            "start": {
                              "line": 588,
                              "column": 8
                            },
                            "end": {
                              "line": 588,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 23731,
                            "end": 23735,
                            "loc": {
                              "start": {
                                "line": 588,
                                "column": 8
                              },
                              "end": {
                                "line": 588,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 23736,
                            "end": 23750,
                            "loc": {
                              "start": {
                                "line": 588,
                                "column": 13
                              },
                              "end": {
                                "line": 588,
                                "column": 27
                              }
                            },
                            "name": "updateGeometry"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 23768,
              "end": 24353,
              "loc": {
                "start": {
                  "line": 591,
                  "column": 4
                },
                "end": {
                  "line": 604,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 23768,
                "end": 23780,
                "loc": {
                  "start": {
                    "line": 591,
                    "column": 4
                  },
                  "end": {
                    "line": 591,
                    "column": 16
                  }
                },
                "name": "addStateDiff"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 23780,
                "end": 24353,
                "loc": {
                  "start": {
                    "line": 591,
                    "column": 16
                  },
                  "end": {
                    "line": 604,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 23781,
                    "end": 23790,
                    "loc": {
                      "start": {
                        "line": 591,
                        "column": 17
                      },
                      "end": {
                        "line": 591,
                        "column": 26
                      }
                    },
                    "name": "stateDiff"
                  },
                  {
                    "type": "Identifier",
                    "start": 23792,
                    "end": 23797,
                    "loc": {
                      "start": {
                        "line": 591,
                        "column": 28
                      },
                      "end": {
                        "line": 591,
                        "column": 33
                      }
                    },
                    "name": "alpha"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 23799,
                  "end": 24353,
                  "loc": {
                    "start": {
                      "line": 591,
                      "column": 35
                    },
                    "end": {
                      "line": 604,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 23810,
                      "end": 23841,
                      "loc": {
                        "start": {
                          "line": 592,
                          "column": 8
                        },
                        "end": {
                          "line": 592,
                          "column": 39
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 23814,
                        "end": 23832,
                        "loc": {
                          "start": {
                            "line": 592,
                            "column": 12
                          },
                          "end": {
                            "line": 592,
                            "column": 30
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 23814,
                          "end": 23823,
                          "loc": {
                            "start": {
                              "line": 592,
                              "column": 12
                            },
                            "end": {
                              "line": 592,
                              "column": 21
                            }
                          },
                          "name": "stateDiff"
                        },
                        "operator": "===",
                        "right": {
                          "type": "Literal",
                          "start": 23828,
                          "end": 23832,
                          "loc": {
                            "start": {
                              "line": 592,
                              "column": 26
                            },
                            "end": {
                              "line": 592,
                              "column": 30
                            }
                          },
                          "value": null,
                          "rawValue": null,
                          "raw": "null"
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 23834,
                        "end": 23841,
                        "loc": {
                          "start": {
                            "line": 592,
                            "column": 32
                          },
                          "end": {
                            "line": 592,
                            "column": 39
                          }
                        },
                        "argument": null,
                        "leadingComments": null,
                        "trailingComments": null
                      },
                      "alternate": null,
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "return; // arc collapses to 0.0.0",
                          "start": 23853,
                          "end": 23888,
                          "loc": {
                            "start": {
                              "line": 594,
                              "column": 8
                            },
                            "end": {
                              "line": 594,
                              "column": 43
                            }
                          },
                          "range": [
                            23853,
                            23888
                          ]
                        }
                      ]
                    },
                    {
                      "type": "IfStatement",
                      "start": 23900,
                      "end": 24010,
                      "loc": {
                        "start": {
                          "line": 596,
                          "column": 8
                        },
                        "end": {
                          "line": 597,
                          "column": 76
                        }
                      },
                      "test": {
                        "type": "CallExpression",
                        "start": 23904,
                        "end": 23931,
                        "loc": {
                          "start": {
                            "line": 596,
                            "column": 12
                          },
                          "end": {
                            "line": 596,
                            "column": 39
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 23904,
                          "end": 23917,
                          "loc": {
                            "start": {
                              "line": 596,
                              "column": 12
                            },
                            "end": {
                              "line": 596,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 23904,
                            "end": 23913,
                            "loc": {
                              "start": {
                                "line": 596,
                                "column": 12
                              },
                              "end": {
                                "line": 596,
                                "column": 21
                              }
                            },
                            "name": "stateDiff",
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 23914,
                            "end": 23917,
                            "loc": {
                              "start": {
                                "line": 596,
                                "column": 22
                              },
                              "end": {
                                "line": 596,
                                "column": 25
                              }
                            },
                            "name": "has"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 23918,
                            "end": 23930,
                            "loc": {
                              "start": {
                                "line": 596,
                                "column": 26
                              },
                              "end": {
                                "line": 596,
                                "column": 38
                              }
                            },
                            "value": "startPoint",
                            "rawValue": "startPoint",
                            "raw": "'startPoint'"
                          }
                        ],
                        "leadingComments": null
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 23946,
                        "end": 24010,
                        "loc": {
                          "start": {
                            "line": 597,
                            "column": 12
                          },
                          "end": {
                            "line": 597,
                            "column": 76
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 23946,
                          "end": 24009,
                          "loc": {
                            "start": {
                              "line": 597,
                              "column": 12
                            },
                            "end": {
                              "line": 597,
                              "column": 75
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 23946,
                            "end": 23973,
                            "loc": {
                              "start": {
                                "line": 597,
                                "column": 12
                              },
                              "end": {
                                "line": 597,
                                "column": 39
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 23946,
                              "end": 23960,
                              "loc": {
                                "start": {
                                  "line": 597,
                                  "column": 12
                                },
                                "end": {
                                  "line": 597,
                                  "column": 26
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 23946,
                                "end": 23957,
                                "loc": {
                                  "start": {
                                    "line": 597,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 597,
                                    "column": 23
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 23946,
                                  "end": 23950,
                                  "loc": {
                                    "start": {
                                      "line": 597,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 597,
                                      "column": 16
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 23951,
                                  "end": 23957,
                                  "loc": {
                                    "start": {
                                      "line": 597,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 597,
                                      "column": 23
                                    }
                                  },
                                  "name": "points"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Literal",
                                "start": 23958,
                                "end": 23959,
                                "loc": {
                                  "start": {
                                    "line": 597,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 597,
                                    "column": 25
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0"
                              },
                              "computed": true
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 23961,
                              "end": 23973,
                              "loc": {
                                "start": {
                                  "line": 597,
                                  "column": 27
                                },
                                "end": {
                                  "line": 597,
                                  "column": 39
                                }
                              },
                              "name": "addStateDiff"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "CallExpression",
                              "start": 23974,
                              "end": 24001,
                              "loc": {
                                "start": {
                                  "line": 597,
                                  "column": 40
                                },
                                "end": {
                                  "line": 597,
                                  "column": 67
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 23974,
                                "end": 23987,
                                "loc": {
                                  "start": {
                                    "line": 597,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 597,
                                    "column": 53
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 23974,
                                  "end": 23983,
                                  "loc": {
                                    "start": {
                                      "line": 597,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 597,
                                      "column": 49
                                    }
                                  },
                                  "name": "stateDiff"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 23984,
                                  "end": 23987,
                                  "loc": {
                                    "start": {
                                      "line": 597,
                                      "column": 50
                                    },
                                    "end": {
                                      "line": 597,
                                      "column": 53
                                    }
                                  },
                                  "name": "get"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 23988,
                                  "end": 24000,
                                  "loc": {
                                    "start": {
                                      "line": 597,
                                      "column": 54
                                    },
                                    "end": {
                                      "line": 597,
                                      "column": 66
                                    }
                                  },
                                  "value": "startPoint",
                                  "rawValue": "startPoint",
                                  "raw": "'startPoint'"
                                }
                              ]
                            },
                            {
                              "type": "Identifier",
                              "start": 24003,
                              "end": 24008,
                              "loc": {
                                "start": {
                                  "line": 597,
                                  "column": 69
                                },
                                "end": {
                                  "line": 597,
                                  "column": 74
                                }
                              },
                              "name": "alpha"
                            }
                          ]
                        }
                      },
                      "alternate": null,
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "return; // arc collapses to 0.0.0",
                          "start": 23853,
                          "end": 23888,
                          "loc": {
                            "start": {
                              "line": 594,
                              "column": 8
                            },
                            "end": {
                              "line": 594,
                              "column": 43
                            }
                          },
                          "range": [
                            23853,
                            23888
                          ]
                        }
                      ]
                    },
                    {
                      "type": "IfStatement",
                      "start": 24020,
                      "end": 24126,
                      "loc": {
                        "start": {
                          "line": 598,
                          "column": 8
                        },
                        "end": {
                          "line": 599,
                          "column": 74
                        }
                      },
                      "test": {
                        "type": "CallExpression",
                        "start": 24024,
                        "end": 24049,
                        "loc": {
                          "start": {
                            "line": 598,
                            "column": 12
                          },
                          "end": {
                            "line": 598,
                            "column": 37
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 24024,
                          "end": 24037,
                          "loc": {
                            "start": {
                              "line": 598,
                              "column": 12
                            },
                            "end": {
                              "line": 598,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 24024,
                            "end": 24033,
                            "loc": {
                              "start": {
                                "line": 598,
                                "column": 12
                              },
                              "end": {
                                "line": 598,
                                "column": 21
                              }
                            },
                            "name": "stateDiff"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 24034,
                            "end": 24037,
                            "loc": {
                              "start": {
                                "line": 598,
                                "column": 22
                              },
                              "end": {
                                "line": 598,
                                "column": 25
                              }
                            },
                            "name": "has"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 24038,
                            "end": 24048,
                            "loc": {
                              "start": {
                                "line": 598,
                                "column": 26
                              },
                              "end": {
                                "line": 598,
                                "column": 36
                              }
                            },
                            "value": "endPoint",
                            "rawValue": "endPoint",
                            "raw": "'endPoint'"
                          }
                        ]
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 24064,
                        "end": 24126,
                        "loc": {
                          "start": {
                            "line": 599,
                            "column": 12
                          },
                          "end": {
                            "line": 599,
                            "column": 74
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 24064,
                          "end": 24125,
                          "loc": {
                            "start": {
                              "line": 599,
                              "column": 12
                            },
                            "end": {
                              "line": 599,
                              "column": 73
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 24064,
                            "end": 24091,
                            "loc": {
                              "start": {
                                "line": 599,
                                "column": 12
                              },
                              "end": {
                                "line": 599,
                                "column": 39
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 24064,
                              "end": 24078,
                              "loc": {
                                "start": {
                                  "line": 599,
                                  "column": 12
                                },
                                "end": {
                                  "line": 599,
                                  "column": 26
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 24064,
                                "end": 24075,
                                "loc": {
                                  "start": {
                                    "line": 599,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 599,
                                    "column": 23
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 24064,
                                  "end": 24068,
                                  "loc": {
                                    "start": {
                                      "line": 599,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 599,
                                      "column": 16
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 24069,
                                  "end": 24075,
                                  "loc": {
                                    "start": {
                                      "line": 599,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 599,
                                      "column": 23
                                    }
                                  },
                                  "name": "points"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Literal",
                                "start": 24076,
                                "end": 24077,
                                "loc": {
                                  "start": {
                                    "line": 599,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 599,
                                    "column": 25
                                  }
                                },
                                "value": 1,
                                "rawValue": 1,
                                "raw": "1"
                              },
                              "computed": true
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 24079,
                              "end": 24091,
                              "loc": {
                                "start": {
                                  "line": 599,
                                  "column": 27
                                },
                                "end": {
                                  "line": 599,
                                  "column": 39
                                }
                              },
                              "name": "addStateDiff"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "CallExpression",
                              "start": 24092,
                              "end": 24117,
                              "loc": {
                                "start": {
                                  "line": 599,
                                  "column": 40
                                },
                                "end": {
                                  "line": 599,
                                  "column": 65
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 24092,
                                "end": 24105,
                                "loc": {
                                  "start": {
                                    "line": 599,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 599,
                                    "column": 53
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 24092,
                                  "end": 24101,
                                  "loc": {
                                    "start": {
                                      "line": 599,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 599,
                                      "column": 49
                                    }
                                  },
                                  "name": "stateDiff"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 24102,
                                  "end": 24105,
                                  "loc": {
                                    "start": {
                                      "line": 599,
                                      "column": 50
                                    },
                                    "end": {
                                      "line": 599,
                                      "column": 53
                                    }
                                  },
                                  "name": "get"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 24106,
                                  "end": 24116,
                                  "loc": {
                                    "start": {
                                      "line": 599,
                                      "column": 54
                                    },
                                    "end": {
                                      "line": 599,
                                      "column": 64
                                    }
                                  },
                                  "value": "endPoint",
                                  "rawValue": "endPoint",
                                  "raw": "'endPoint'"
                                }
                              ]
                            },
                            {
                              "type": "Identifier",
                              "start": 24119,
                              "end": 24124,
                              "loc": {
                                "start": {
                                  "line": 599,
                                  "column": 67
                                },
                                "end": {
                                  "line": 599,
                                  "column": 72
                                }
                              },
                              "name": "alpha"
                            }
                          ]
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 24136,
                      "end": 24240,
                      "loc": {
                        "start": {
                          "line": 600,
                          "column": 8
                        },
                        "end": {
                          "line": 601,
                          "column": 74
                        }
                      },
                      "test": {
                        "type": "CallExpression",
                        "start": 24140,
                        "end": 24163,
                        "loc": {
                          "start": {
                            "line": 600,
                            "column": 12
                          },
                          "end": {
                            "line": 600,
                            "column": 35
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 24140,
                          "end": 24153,
                          "loc": {
                            "start": {
                              "line": 600,
                              "column": 12
                            },
                            "end": {
                              "line": 600,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 24140,
                            "end": 24149,
                            "loc": {
                              "start": {
                                "line": 600,
                                "column": 12
                              },
                              "end": {
                                "line": 600,
                                "column": 21
                              }
                            },
                            "name": "stateDiff"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 24150,
                            "end": 24153,
                            "loc": {
                              "start": {
                                "line": 600,
                                "column": 22
                              },
                              "end": {
                                "line": 600,
                                "column": 25
                              }
                            },
                            "name": "has"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 24154,
                            "end": 24162,
                            "loc": {
                              "start": {
                                "line": 600,
                                "column": 26
                              },
                              "end": {
                                "line": 600,
                                "column": 34
                              }
                            },
                            "value": "center",
                            "rawValue": "center",
                            "raw": "'center'"
                          }
                        ]
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 24178,
                        "end": 24240,
                        "loc": {
                          "start": {
                            "line": 601,
                            "column": 12
                          },
                          "end": {
                            "line": 601,
                            "column": 74
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 24178,
                          "end": 24239,
                          "loc": {
                            "start": {
                              "line": 601,
                              "column": 12
                            },
                            "end": {
                              "line": 601,
                              "column": 73
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 24178,
                            "end": 24207,
                            "loc": {
                              "start": {
                                "line": 601,
                                "column": 12
                              },
                              "end": {
                                "line": 601,
                                "column": 41
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 24178,
                              "end": 24194,
                              "loc": {
                                "start": {
                                  "line": 601,
                                  "column": 12
                                },
                                "end": {
                                  "line": 601,
                                  "column": 28
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 24178,
                                "end": 24182,
                                "loc": {
                                  "start": {
                                    "line": 601,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 601,
                                    "column": 16
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 24183,
                                "end": 24194,
                                "loc": {
                                  "start": {
                                    "line": 601,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 601,
                                    "column": 28
                                  }
                                },
                                "name": "centerPoint"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 24195,
                              "end": 24207,
                              "loc": {
                                "start": {
                                  "line": 601,
                                  "column": 29
                                },
                                "end": {
                                  "line": 601,
                                  "column": 41
                                }
                              },
                              "name": "addStateDiff"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "CallExpression",
                              "start": 24208,
                              "end": 24231,
                              "loc": {
                                "start": {
                                  "line": 601,
                                  "column": 42
                                },
                                "end": {
                                  "line": 601,
                                  "column": 65
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 24208,
                                "end": 24221,
                                "loc": {
                                  "start": {
                                    "line": 601,
                                    "column": 42
                                  },
                                  "end": {
                                    "line": 601,
                                    "column": 55
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 24208,
                                  "end": 24217,
                                  "loc": {
                                    "start": {
                                      "line": 601,
                                      "column": 42
                                    },
                                    "end": {
                                      "line": 601,
                                      "column": 51
                                    }
                                  },
                                  "name": "stateDiff"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 24218,
                                  "end": 24221,
                                  "loc": {
                                    "start": {
                                      "line": 601,
                                      "column": 52
                                    },
                                    "end": {
                                      "line": 601,
                                      "column": 55
                                    }
                                  },
                                  "name": "get"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 24222,
                                  "end": 24230,
                                  "loc": {
                                    "start": {
                                      "line": 601,
                                      "column": 56
                                    },
                                    "end": {
                                      "line": 601,
                                      "column": 64
                                    }
                                  },
                                  "value": "center",
                                  "rawValue": "center",
                                  "raw": "'center'"
                                }
                              ]
                            },
                            {
                              "type": "Identifier",
                              "start": 24233,
                              "end": 24238,
                              "loc": {
                                "start": {
                                  "line": 601,
                                  "column": 67
                                },
                                "end": {
                                  "line": 601,
                                  "column": 72
                                }
                              },
                              "name": "alpha"
                            }
                          ]
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 24250,
                      "end": 24346,
                      "loc": {
                        "start": {
                          "line": 602,
                          "column": 8
                        },
                        "end": {
                          "line": 603,
                          "column": 63
                        }
                      },
                      "test": {
                        "type": "CallExpression",
                        "start": 24254,
                        "end": 24280,
                        "loc": {
                          "start": {
                            "line": 602,
                            "column": 12
                          },
                          "end": {
                            "line": 602,
                            "column": 38
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 24254,
                          "end": 24267,
                          "loc": {
                            "start": {
                              "line": 602,
                              "column": 12
                            },
                            "end": {
                              "line": 602,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 24254,
                            "end": 24263,
                            "loc": {
                              "start": {
                                "line": 602,
                                "column": 12
                              },
                              "end": {
                                "line": 602,
                                "column": 21
                              }
                            },
                            "name": "stateDiff"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 24264,
                            "end": 24267,
                            "loc": {
                              "start": {
                                "line": 602,
                                "column": 22
                              },
                              "end": {
                                "line": 602,
                                "column": 25
                              }
                            },
                            "name": "has"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 24268,
                            "end": 24279,
                            "loc": {
                              "start": {
                                "line": 602,
                                "column": 26
                              },
                              "end": {
                                "line": 602,
                                "column": 37
                              }
                            },
                            "value": "clockwise",
                            "rawValue": "clockwise",
                            "raw": "'clockwise'"
                          }
                        ]
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 24295,
                        "end": 24346,
                        "loc": {
                          "start": {
                            "line": 603,
                            "column": 12
                          },
                          "end": {
                            "line": 603,
                            "column": 63
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 24295,
                          "end": 24345,
                          "loc": {
                            "start": {
                              "line": 603,
                              "column": 12
                            },
                            "end": {
                              "line": 603,
                              "column": 62
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "MemberExpression",
                            "start": 24295,
                            "end": 24309,
                            "loc": {
                              "start": {
                                "line": 603,
                                "column": 12
                              },
                              "end": {
                                "line": 603,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 24295,
                              "end": 24299,
                              "loc": {
                                "start": {
                                  "line": 603,
                                  "column": 12
                                },
                                "end": {
                                  "line": 603,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 24300,
                              "end": 24309,
                              "loc": {
                                "start": {
                                  "line": 603,
                                  "column": 17
                                },
                                "end": {
                                  "line": 603,
                                  "column": 26
                                }
                              },
                              "name": "clockwise"
                            },
                            "computed": false
                          },
                          "right": {
                            "type": "BinaryExpression",
                            "start": 24313,
                            "end": 24344,
                            "loc": {
                              "start": {
                                "line": 603,
                                "column": 30
                              },
                              "end": {
                                "line": 603,
                                "column": 61
                              }
                            },
                            "left": {
                              "type": "CallExpression",
                              "start": 24313,
                              "end": 24339,
                              "loc": {
                                "start": {
                                  "line": 603,
                                  "column": 30
                                },
                                "end": {
                                  "line": 603,
                                  "column": 56
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 24313,
                                "end": 24326,
                                "loc": {
                                  "start": {
                                    "line": 603,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 603,
                                    "column": 43
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 24313,
                                  "end": 24322,
                                  "loc": {
                                    "start": {
                                      "line": 603,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 603,
                                      "column": 39
                                    }
                                  },
                                  "name": "stateDiff"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 24323,
                                  "end": 24326,
                                  "loc": {
                                    "start": {
                                      "line": 603,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 603,
                                      "column": 43
                                    }
                                  },
                                  "name": "get"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 24327,
                                  "end": 24338,
                                  "loc": {
                                    "start": {
                                      "line": 603,
                                      "column": 44
                                    },
                                    "end": {
                                      "line": 603,
                                      "column": 55
                                    }
                                  },
                                  "value": "clockwise",
                                  "rawValue": "clockwise",
                                  "raw": "'clockwise'"
                                }
                              ]
                            },
                            "operator": "!=",
                            "right": {
                              "type": "Literal",
                              "start": 24343,
                              "end": 24344,
                              "loc": {
                                "start": {
                                  "line": 603,
                                  "column": 60
                                },
                                "end": {
                                  "line": 603,
                                  "column": 61
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            },
                            "parenthesizedExpression": true
                          }
                        }
                      },
                      "alternate": null
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 24361,
              "end": 24620,
              "loc": {
                "start": {
                  "line": 606,
                  "column": 4
                },
                "end": {
                  "line": 613,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 24361,
                "end": 24379,
                "loc": {
                  "start": {
                    "line": 606,
                    "column": 4
                  },
                  "end": {
                    "line": 606,
                    "column": 22
                  }
                },
                "name": "prepareAddOnServer"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 24379,
                "end": 24620,
                "loc": {
                  "start": {
                    "line": 606,
                    "column": 22
                  },
                  "end": {
                    "line": 613,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 24380,
                    "end": 24386,
                    "loc": {
                      "start": {
                        "line": 606,
                        "column": 23
                      },
                      "end": {
                        "line": 606,
                        "column": 29
                      }
                    },
                    "name": "sketch"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 24388,
                  "end": 24620,
                  "loc": {
                    "start": {
                      "line": 606,
                      "column": 31
                    },
                    "end": {
                      "line": 613,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 24399,
                      "end": 24613,
                      "loc": {
                        "start": {
                          "line": 607,
                          "column": 8
                        },
                        "end": {
                          "line": 612,
                          "column": 31
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 24406,
                        "end": 24612,
                        "loc": {
                          "start": {
                            "line": 607,
                            "column": 15
                          },
                          "end": {
                            "line": 612,
                            "column": 30
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 24406,
                          "end": 24597,
                          "loc": {
                            "start": {
                              "line": 607,
                              "column": 15
                            },
                            "end": {
                              "line": 612,
                              "column": 15
                            }
                          },
                          "object": {
                            "type": "CallExpression",
                            "start": 24406,
                            "end": 24592,
                            "loc": {
                              "start": {
                                "line": 607,
                                "column": 15
                              },
                              "end": {
                                "line": 612,
                                "column": 10
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 24406,
                              "end": 24426,
                              "loc": {
                                "start": {
                                  "line": 607,
                                  "column": 15
                                },
                                "end": {
                                  "line": 607,
                                  "column": 35
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 24406,
                                "end": 24415,
                                "loc": {
                                  "start": {
                                    "line": 607,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 607,
                                    "column": 24
                                  }
                                },
                                "name": "Statement"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 24416,
                                "end": 24426,
                                "loc": {
                                  "start": {
                                    "line": 607,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 607,
                                    "column": 35
                                  }
                                },
                                "name": "JSONExport"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "CallExpression",
                                "start": 24427,
                                "end": 24591,
                                "loc": {
                                  "start": {
                                    "line": 607,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 612,
                                    "column": 9
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 24427,
                                  "end": 24444,
                                  "loc": {
                                    "start": {
                                      "line": 607,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 607,
                                      "column": 53
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 24427,
                                    "end": 24437,
                                    "loc": {
                                      "start": {
                                        "line": 607,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 607,
                                        "column": 46
                                      }
                                    },
                                    "name": "Expression"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 24438,
                                    "end": 24444,
                                    "loc": {
                                      "start": {
                                        "line": 607,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 607,
                                        "column": 53
                                      }
                                    },
                                    "name": "AddArc"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 24459,
                                    "end": 24465,
                                    "loc": {
                                      "start": {
                                        "line": 608,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 608,
                                        "column": 18
                                      }
                                    },
                                    "name": "sketch"
                                  },
                                  {
                                    "type": "MemberExpression",
                                    "start": 24480,
                                    "end": 24503,
                                    "loc": {
                                      "start": {
                                        "line": 609,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 609,
                                        "column": 35
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 24480,
                                      "end": 24494,
                                      "loc": {
                                        "start": {
                                          "line": 609,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 609,
                                          "column": 26
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 24480,
                                        "end": 24491,
                                        "loc": {
                                          "start": {
                                            "line": 609,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 609,
                                            "column": 23
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 24480,
                                          "end": 24484,
                                          "loc": {
                                            "start": {
                                              "line": 609,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 609,
                                              "column": 16
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 24485,
                                          "end": 24491,
                                          "loc": {
                                            "start": {
                                              "line": 609,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 609,
                                              "column": 23
                                            }
                                          },
                                          "name": "points"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Literal",
                                        "start": 24492,
                                        "end": 24493,
                                        "loc": {
                                          "start": {
                                            "line": 609,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 609,
                                            "column": 25
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      "computed": true
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 24495,
                                      "end": 24503,
                                      "loc": {
                                        "start": {
                                          "line": 609,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 609,
                                          "column": 35
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  },
                                  {
                                    "type": "CallExpression",
                                    "start": 24518,
                                    "end": 24542,
                                    "loc": {
                                      "start": {
                                        "line": 610,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 610,
                                        "column": 36
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 24518,
                                      "end": 24540,
                                      "loc": {
                                        "start": {
                                          "line": 610,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 610,
                                          "column": 34
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 24518,
                                        "end": 24522,
                                        "loc": {
                                          "start": {
                                            "line": 610,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 610,
                                            "column": 16
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 24523,
                                        "end": 24540,
                                        "loc": {
                                          "start": {
                                            "line": 610,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 610,
                                            "column": 34
                                          }
                                        },
                                        "name": "getMiddlePosition"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  },
                                  {
                                    "type": "MemberExpression",
                                    "start": 24557,
                                    "end": 24580,
                                    "loc": {
                                      "start": {
                                        "line": 611,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 611,
                                        "column": 35
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 24557,
                                      "end": 24571,
                                      "loc": {
                                        "start": {
                                          "line": 611,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 611,
                                          "column": 26
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 24557,
                                        "end": 24568,
                                        "loc": {
                                          "start": {
                                            "line": 611,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 611,
                                            "column": 23
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 24557,
                                          "end": 24561,
                                          "loc": {
                                            "start": {
                                              "line": 611,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 611,
                                              "column": 16
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 24562,
                                          "end": 24568,
                                          "loc": {
                                            "start": {
                                              "line": 611,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 611,
                                              "column": 23
                                            }
                                          },
                                          "name": "points"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Literal",
                                        "start": 24569,
                                        "end": 24570,
                                        "loc": {
                                          "start": {
                                            "line": 611,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 611,
                                            "column": 25
                                          }
                                        },
                                        "value": 1,
                                        "rawValue": 1,
                                        "raw": "1"
                                      },
                                      "computed": true
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 24572,
                                      "end": 24580,
                                      "loc": {
                                        "start": {
                                          "line": 611,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 611,
                                          "column": 35
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  }
                                ]
                              }
                            ]
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 24593,
                            "end": 24597,
                            "loc": {
                              "start": {
                                "line": 612,
                                "column": 11
                              },
                              "end": {
                                "line": 612,
                                "column": 15
                              }
                            },
                            "name": "then"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 24598,
                            "end": 24611,
                            "loc": {
                              "start": {
                                "line": 612,
                                "column": 16
                              },
                              "end": {
                                "line": 612,
                                "column": 29
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 24598,
                              "end": 24605,
                              "loc": {
                                "start": {
                                  "line": 612,
                                  "column": 16
                                },
                                "end": {
                                  "line": 612,
                                  "column": 23
                                }
                              },
                              "name": "parseTo"
                            },
                            "arguments": [
                              {
                                "type": "ThisExpression",
                                "start": 24606,
                                "end": 24610,
                                "loc": {
                                  "start": {
                                    "line": 612,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 612,
                                    "column": 28
                                  }
                                }
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 24628,
              "end": 24989,
              "loc": {
                "start": {
                  "line": 615,
                  "column": 4
                },
                "end": {
                  "line": 624,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 24628,
                "end": 24649,
                "loc": {
                  "start": {
                    "line": 615,
                    "column": 4
                  },
                  "end": {
                    "line": 615,
                    "column": 25
                  }
                },
                "name": "prepareUpdateToServer"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 24649,
                "end": 24989,
                "loc": {
                  "start": {
                    "line": 615,
                    "column": 25
                  },
                  "end": {
                    "line": 624,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 24650,
                    "end": 24656,
                    "loc": {
                      "start": {
                        "line": 615,
                        "column": 26
                      },
                      "end": {
                        "line": 615,
                        "column": 32
                      }
                    },
                    "name": "sketch"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 24658,
                  "end": 24989,
                  "loc": {
                    "start": {
                      "line": 615,
                      "column": 34
                    },
                    "end": {
                      "line": 624,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 24669,
                      "end": 24982,
                      "loc": {
                        "start": {
                          "line": 616,
                          "column": 8
                        },
                        "end": {
                          "line": 623,
                          "column": 31
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 24676,
                        "end": 24981,
                        "loc": {
                          "start": {
                            "line": 616,
                            "column": 15
                          },
                          "end": {
                            "line": 623,
                            "column": 30
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 24676,
                          "end": 24966,
                          "loc": {
                            "start": {
                              "line": 616,
                              "column": 15
                            },
                            "end": {
                              "line": 623,
                              "column": 15
                            }
                          },
                          "object": {
                            "type": "CallExpression",
                            "start": 24676,
                            "end": 24961,
                            "loc": {
                              "start": {
                                "line": 616,
                                "column": 15
                              },
                              "end": {
                                "line": 623,
                                "column": 10
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 24676,
                              "end": 24696,
                              "loc": {
                                "start": {
                                  "line": 616,
                                  "column": 15
                                },
                                "end": {
                                  "line": 616,
                                  "column": 35
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 24676,
                                "end": 24685,
                                "loc": {
                                  "start": {
                                    "line": 616,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 616,
                                    "column": 24
                                  }
                                },
                                "name": "Statement"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 24686,
                                "end": 24696,
                                "loc": {
                                  "start": {
                                    "line": 616,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 616,
                                    "column": 35
                                  }
                                },
                                "name": "JSONExport"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "CallExpression",
                                "start": 24697,
                                "end": 24960,
                                "loc": {
                                  "start": {
                                    "line": 616,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 623,
                                    "column": 9
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 24697,
                                  "end": 24717,
                                  "loc": {
                                    "start": {
                                      "line": 616,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 616,
                                      "column": 56
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 24697,
                                    "end": 24707,
                                    "loc": {
                                      "start": {
                                        "line": 616,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 616,
                                        "column": 46
                                      }
                                    },
                                    "name": "Expression"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 24708,
                                    "end": 24717,
                                    "loc": {
                                      "start": {
                                        "line": 616,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 616,
                                        "column": 56
                                      }
                                    },
                                    "name": "UpdateArc"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 24732,
                                    "end": 24738,
                                    "loc": {
                                      "start": {
                                        "line": 617,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 617,
                                        "column": 18
                                      }
                                    },
                                    "name": "sketch"
                                  },
                                  {
                                    "type": "ThisExpression",
                                    "start": 24753,
                                    "end": 24757,
                                    "loc": {
                                      "start": {
                                        "line": 618,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 618,
                                        "column": 16
                                      }
                                    }
                                  },
                                  {
                                    "type": "MemberExpression",
                                    "start": 24772,
                                    "end": 24795,
                                    "loc": {
                                      "start": {
                                        "line": 619,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 619,
                                        "column": 35
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 24772,
                                      "end": 24786,
                                      "loc": {
                                        "start": {
                                          "line": 619,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 619,
                                          "column": 26
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 24772,
                                        "end": 24783,
                                        "loc": {
                                          "start": {
                                            "line": 619,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 619,
                                            "column": 23
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 24772,
                                          "end": 24776,
                                          "loc": {
                                            "start": {
                                              "line": 619,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 619,
                                              "column": 16
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 24777,
                                          "end": 24783,
                                          "loc": {
                                            "start": {
                                              "line": 619,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 619,
                                              "column": 23
                                            }
                                          },
                                          "name": "points"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Literal",
                                        "start": 24784,
                                        "end": 24785,
                                        "loc": {
                                          "start": {
                                            "line": 619,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 619,
                                            "column": 25
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      "computed": true
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 24787,
                                      "end": 24795,
                                      "loc": {
                                        "start": {
                                          "line": 619,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 619,
                                          "column": 35
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  },
                                  {
                                    "type": "MemberExpression",
                                    "start": 24810,
                                    "end": 24833,
                                    "loc": {
                                      "start": {
                                        "line": 620,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 620,
                                        "column": 35
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 24810,
                                      "end": 24824,
                                      "loc": {
                                        "start": {
                                          "line": 620,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 620,
                                          "column": 26
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 24810,
                                        "end": 24821,
                                        "loc": {
                                          "start": {
                                            "line": 620,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 620,
                                            "column": 23
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 24810,
                                          "end": 24814,
                                          "loc": {
                                            "start": {
                                              "line": 620,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 620,
                                              "column": 16
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 24815,
                                          "end": 24821,
                                          "loc": {
                                            "start": {
                                              "line": 620,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 620,
                                              "column": 23
                                            }
                                          },
                                          "name": "points"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Literal",
                                        "start": 24822,
                                        "end": 24823,
                                        "loc": {
                                          "start": {
                                            "line": 620,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 620,
                                            "column": 25
                                          }
                                        },
                                        "value": 1,
                                        "rawValue": 1,
                                        "raw": "1"
                                      },
                                      "computed": true
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 24825,
                                      "end": 24833,
                                      "loc": {
                                        "start": {
                                          "line": 620,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 620,
                                          "column": 35
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  },
                                  {
                                    "type": "MemberExpression",
                                    "start": 24848,
                                    "end": 24873,
                                    "loc": {
                                      "start": {
                                        "line": 621,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 621,
                                        "column": 37
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 24848,
                                      "end": 24864,
                                      "loc": {
                                        "start": {
                                          "line": 621,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 621,
                                          "column": 28
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 24848,
                                        "end": 24852,
                                        "loc": {
                                          "start": {
                                            "line": 621,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 621,
                                            "column": 16
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 24853,
                                        "end": 24864,
                                        "loc": {
                                          "start": {
                                            "line": 621,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 621,
                                            "column": 28
                                          }
                                        },
                                        "name": "centerPoint"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 24865,
                                      "end": 24873,
                                      "loc": {
                                        "start": {
                                          "line": 621,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 621,
                                          "column": 37
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  },
                                  {
                                    "type": "CallExpression",
                                    "start": 24888,
                                    "end": 24949,
                                    "loc": {
                                      "start": {
                                        "line": 622,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 622,
                                        "column": 73
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 24888,
                                      "end": 24922,
                                      "loc": {
                                        "start": {
                                          "line": 622,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 622,
                                          "column": 46
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 24888,
                                        "end": 24911,
                                        "loc": {
                                          "start": {
                                            "line": 622,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 622,
                                            "column": 35
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 24888,
                                          "end": 24902,
                                          "loc": {
                                            "start": {
                                              "line": 622,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 622,
                                              "column": 26
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 24888,
                                            "end": 24899,
                                            "loc": {
                                              "start": {
                                                "line": 622,
                                                "column": 12
                                              },
                                              "end": {
                                                "line": 622,
                                                "column": 23
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 24888,
                                              "end": 24892,
                                              "loc": {
                                                "start": {
                                                  "line": 622,
                                                  "column": 12
                                                },
                                                "end": {
                                                  "line": 622,
                                                  "column": 16
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 24893,
                                              "end": 24899,
                                              "loc": {
                                                "start": {
                                                  "line": 622,
                                                  "column": 17
                                                },
                                                "end": {
                                                  "line": 622,
                                                  "column": 23
                                                }
                                              },
                                              "name": "points"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Literal",
                                            "start": 24900,
                                            "end": 24901,
                                            "loc": {
                                              "start": {
                                                "line": 622,
                                                "column": 24
                                              },
                                              "end": {
                                                "line": 622,
                                                "column": 25
                                              }
                                            },
                                            "value": 0,
                                            "rawValue": 0,
                                            "raw": "0"
                                          },
                                          "computed": true
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 24903,
                                          "end": 24911,
                                          "loc": {
                                            "start": {
                                              "line": 622,
                                              "column": 27
                                            },
                                            "end": {
                                              "line": 622,
                                              "column": 35
                                            }
                                          },
                                          "name": "position"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 24912,
                                        "end": 24922,
                                        "loc": {
                                          "start": {
                                            "line": 622,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 622,
                                            "column": 46
                                          }
                                        },
                                        "name": "distanceTo"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "MemberExpression",
                                        "start": 24923,
                                        "end": 24948,
                                        "loc": {
                                          "start": {
                                            "line": 622,
                                            "column": 47
                                          },
                                          "end": {
                                            "line": 622,
                                            "column": 72
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 24923,
                                          "end": 24939,
                                          "loc": {
                                            "start": {
                                              "line": 622,
                                              "column": 47
                                            },
                                            "end": {
                                              "line": 622,
                                              "column": 63
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 24923,
                                            "end": 24927,
                                            "loc": {
                                              "start": {
                                                "line": 622,
                                                "column": 47
                                              },
                                              "end": {
                                                "line": 622,
                                                "column": 51
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 24928,
                                            "end": 24939,
                                            "loc": {
                                              "start": {
                                                "line": 622,
                                                "column": 52
                                              },
                                              "end": {
                                                "line": 622,
                                                "column": 63
                                              }
                                            },
                                            "name": "centerPoint"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 24940,
                                          "end": 24948,
                                          "loc": {
                                            "start": {
                                              "line": 622,
                                              "column": 64
                                            },
                                            "end": {
                                              "line": 622,
                                              "column": 72
                                            }
                                          },
                                          "name": "position"
                                        },
                                        "computed": false
                                      }
                                    ]
                                  }
                                ]
                              }
                            ]
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 24962,
                            "end": 24966,
                            "loc": {
                              "start": {
                                "line": 623,
                                "column": 11
                              },
                              "end": {
                                "line": 623,
                                "column": 15
                              }
                            },
                            "name": "then"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 24967,
                            "end": 24980,
                            "loc": {
                              "start": {
                                "line": 623,
                                "column": 16
                              },
                              "end": {
                                "line": 623,
                                "column": 29
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 24967,
                              "end": 24974,
                              "loc": {
                                "start": {
                                  "line": 623,
                                  "column": 16
                                },
                                "end": {
                                  "line": 623,
                                  "column": 23
                                }
                              },
                              "name": "parseTo"
                            },
                            "arguments": [
                              {
                                "type": "ThisExpression",
                                "start": 24975,
                                "end": 24979,
                                "loc": {
                                  "start": {
                                    "line": 623,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 623,
                                    "column": 28
                                  }
                                }
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 24997,
              "end": 25105,
              "loc": {
                "start": {
                  "line": 626,
                  "column": 4
                },
                "end": {
                  "line": 628,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 24997,
                "end": 25018,
                "loc": {
                  "start": {
                    "line": 626,
                    "column": 4
                  },
                  "end": {
                    "line": 626,
                    "column": 25
                  }
                },
                "name": "prepareRemoveOnServer"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 25018,
                "end": 25105,
                "loc": {
                  "start": {
                    "line": 626,
                    "column": 25
                  },
                  "end": {
                    "line": 628,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 25019,
                    "end": 25025,
                    "loc": {
                      "start": {
                        "line": 626,
                        "column": 26
                      },
                      "end": {
                        "line": 626,
                        "column": 32
                      }
                    },
                    "name": "sketch"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 25027,
                  "end": 25105,
                  "loc": {
                    "start": {
                      "line": 626,
                      "column": 34
                    },
                    "end": {
                      "line": 628,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 25038,
                      "end": 25098,
                      "loc": {
                        "start": {
                          "line": 627,
                          "column": 8
                        },
                        "end": {
                          "line": 627,
                          "column": 68
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 25045,
                        "end": 25097,
                        "loc": {
                          "start": {
                            "line": 627,
                            "column": 15
                          },
                          "end": {
                            "line": 627,
                            "column": 67
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 25045,
                          "end": 25061,
                          "loc": {
                            "start": {
                              "line": 627,
                              "column": 15
                            },
                            "end": {
                              "line": 627,
                              "column": 31
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 25045,
                            "end": 25054,
                            "loc": {
                              "start": {
                                "line": 627,
                                "column": 15
                              },
                              "end": {
                                "line": 627,
                                "column": 24
                              }
                            },
                            "name": "Statement"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 25055,
                            "end": 25061,
                            "loc": {
                              "start": {
                                "line": 627,
                                "column": 25
                              },
                              "end": {
                                "line": 627,
                                "column": 31
                              }
                            },
                            "name": "Return"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 25062,
                            "end": 25096,
                            "loc": {
                              "start": {
                                "line": 627,
                                "column": 32
                              },
                              "end": {
                                "line": 627,
                                "column": 66
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 25062,
                              "end": 25082,
                              "loc": {
                                "start": {
                                  "line": 627,
                                  "column": 32
                                },
                                "end": {
                                  "line": 627,
                                  "column": 52
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 25062,
                                "end": 25072,
                                "loc": {
                                  "start": {
                                    "line": 627,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 627,
                                    "column": 42
                                  }
                                },
                                "name": "Expression"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 25073,
                                "end": 25082,
                                "loc": {
                                  "start": {
                                    "line": 627,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 627,
                                    "column": 52
                                  }
                                },
                                "name": "RemoveArc"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 25083,
                                "end": 25089,
                                "loc": {
                                  "start": {
                                    "line": 627,
                                    "column": 53
                                  },
                                  "end": {
                                    "line": 627,
                                    "column": 59
                                  }
                                },
                                "name": "sketch"
                              },
                              {
                                "type": "ThisExpression",
                                "start": 25091,
                                "end": 25095,
                                "loc": {
                                  "start": {
                                    "line": 627,
                                    "column": 61
                                  },
                                  "end": {
                                    "line": 627,
                                    "column": 65
                                  }
                                }
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 25113,
              "end": 25334,
              "loc": {
                "start": {
                  "line": 630,
                  "column": 4
                },
                "end": {
                  "line": 635,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 25113,
                "end": 25122,
                "loc": {
                  "start": {
                    "line": 630,
                    "column": 4
                  },
                  "end": {
                    "line": 630,
                    "column": 13
                  }
                },
                "name": "addMember"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 25122,
                "end": 25334,
                "loc": {
                  "start": {
                    "line": 630,
                    "column": 13
                  },
                  "end": {
                    "line": 635,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 25123,
                    "end": 25129,
                    "loc": {
                      "start": {
                        "line": 630,
                        "column": 14
                      },
                      "end": {
                        "line": 630,
                        "column": 20
                      }
                    },
                    "name": "member"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 25131,
                  "end": 25334,
                  "loc": {
                    "start": {
                      "line": 630,
                      "column": 22
                    },
                    "end": {
                      "line": 635,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 25142,
                      "end": 25201,
                      "loc": {
                        "start": {
                          "line": 631,
                          "column": 8
                        },
                        "end": {
                          "line": 631,
                          "column": 67
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 25142,
                        "end": 25200,
                        "loc": {
                          "start": {
                            "line": 631,
                            "column": 8
                          },
                          "end": {
                            "line": 631,
                            "column": 66
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 25142,
                          "end": 25183,
                          "loc": {
                            "start": {
                              "line": 631,
                              "column": 8
                            },
                            "end": {
                              "line": 631,
                              "column": 49
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 25142,
                            "end": 25177,
                            "loc": {
                              "start": {
                                "line": 631,
                                "column": 8
                              },
                              "end": {
                                "line": 631,
                                "column": 43
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 25142,
                              "end": 25167,
                              "loc": {
                                "start": {
                                  "line": 631,
                                  "column": 8
                                },
                                "end": {
                                  "line": 631,
                                  "column": 33
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 25142,
                                "end": 25157,
                                "loc": {
                                  "start": {
                                    "line": 631,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 631,
                                    "column": 23
                                  }
                                },
                                "name": "GeometricObject"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 25158,
                                "end": 25167,
                                "loc": {
                                  "start": {
                                    "line": 631,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 631,
                                    "column": 33
                                  }
                                },
                                "name": "prototype"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 25168,
                              "end": 25177,
                              "loc": {
                                "start": {
                                  "line": 631,
                                  "column": 34
                                },
                                "end": {
                                  "line": 631,
                                  "column": 43
                                }
                              },
                              "name": "addMember"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 25178,
                            "end": 25183,
                            "loc": {
                              "start": {
                                "line": 631,
                                "column": 44
                              },
                              "end": {
                                "line": 631,
                                "column": 49
                              }
                            },
                            "name": "apply"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ThisExpression",
                            "start": 25184,
                            "end": 25188,
                            "loc": {
                              "start": {
                                "line": 631,
                                "column": 50
                              },
                              "end": {
                                "line": 631,
                                "column": 54
                              }
                            }
                          },
                          {
                            "type": "Identifier",
                            "start": 25190,
                            "end": 25199,
                            "loc": {
                              "start": {
                                "line": 631,
                                "column": 56
                              },
                              "end": {
                                "line": 631,
                                "column": 65
                              }
                            },
                            "name": "arguments"
                          }
                        ]
                      }
                    },
                    {
                      "type": "SwitchStatement",
                      "start": 25211,
                      "end": 25327,
                      "loc": {
                        "start": {
                          "line": 632,
                          "column": 8
                        },
                        "end": {
                          "line": 634,
                          "column": 9
                        }
                      },
                      "discriminant": {
                        "type": "MemberExpression",
                        "start": 25219,
                        "end": 25250,
                        "loc": {
                          "start": {
                            "line": 632,
                            "column": 16
                          },
                          "end": {
                            "line": 632,
                            "column": 47
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 25219,
                          "end": 25245,
                          "loc": {
                            "start": {
                              "line": 632,
                              "column": 16
                            },
                            "end": {
                              "line": 632,
                              "column": 42
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 25219,
                            "end": 25234,
                            "loc": {
                              "start": {
                                "line": 632,
                                "column": 16
                              },
                              "end": {
                                "line": 632,
                                "column": 31
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 25219,
                              "end": 25225,
                              "loc": {
                                "start": {
                                  "line": 632,
                                  "column": 16
                                },
                                "end": {
                                  "line": 632,
                                  "column": 22
                                }
                              },
                              "name": "member"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 25226,
                              "end": 25234,
                              "loc": {
                                "start": {
                                  "line": 632,
                                  "column": 23
                                },
                                "end": {
                                  "line": 632,
                                  "column": 31
                                }
                              },
                              "name": "userData"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 25235,
                            "end": 25245,
                            "loc": {
                              "start": {
                                "line": 632,
                                "column": 32
                              },
                              "end": {
                                "line": 632,
                                "column": 42
                              }
                            },
                            "name": "memberInfo"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 25246,
                          "end": 25250,
                          "loc": {
                            "start": {
                              "line": 632,
                              "column": 43
                            },
                            "end": {
                              "line": 632,
                              "column": 47
                            }
                          },
                          "name": "name"
                        },
                        "computed": false
                      },
                      "cases": [
                        {
                          "type": "SwitchCase",
                          "start": 25267,
                          "end": 25316,
                          "loc": {
                            "start": {
                              "line": 633,
                              "column": 12
                            },
                            "end": {
                              "line": 633,
                              "column": 61
                            }
                          },
                          "consequent": [
                            {
                              "type": "ExpressionStatement",
                              "start": 25281,
                              "end": 25309,
                              "loc": {
                                "start": {
                                  "line": 633,
                                  "column": 26
                                },
                                "end": {
                                  "line": 633,
                                  "column": 54
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 25281,
                                "end": 25308,
                                "loc": {
                                  "start": {
                                    "line": 633,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 633,
                                    "column": 53
                                  }
                                },
                                "operator": "=",
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 25281,
                                  "end": 25295,
                                  "loc": {
                                    "start": {
                                      "line": 633,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 633,
                                      "column": 40
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 25281,
                                    "end": 25285,
                                    "loc": {
                                      "start": {
                                        "line": 633,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 633,
                                        "column": 30
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 25286,
                                    "end": 25295,
                                    "loc": {
                                      "start": {
                                        "line": 633,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 633,
                                        "column": 40
                                      }
                                    },
                                    "name": "clockwise"
                                  },
                                  "computed": false
                                },
                                "right": {
                                  "type": "BinaryExpression",
                                  "start": 25298,
                                  "end": 25308,
                                  "loc": {
                                    "start": {
                                      "line": 633,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 633,
                                      "column": 53
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 25298,
                                    "end": 25304,
                                    "loc": {
                                      "start": {
                                        "line": 633,
                                        "column": 43
                                      },
                                      "end": {
                                        "line": 633,
                                        "column": 49
                                      }
                                    },
                                    "name": "member"
                                  },
                                  "operator": "<",
                                  "right": {
                                    "type": "Literal",
                                    "start": 25307,
                                    "end": 25308,
                                    "loc": {
                                      "start": {
                                        "line": 633,
                                        "column": 52
                                      },
                                      "end": {
                                        "line": 633,
                                        "column": 53
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  }
                                }
                              }
                            },
                            {
                              "type": "BreakStatement",
                              "start": 25310,
                              "end": 25316,
                              "loc": {
                                "start": {
                                  "line": 633,
                                  "column": 55
                                },
                                "end": {
                                  "line": 633,
                                  "column": 61
                                }
                              },
                              "label": null
                            }
                          ],
                          "test": {
                            "type": "Literal",
                            "start": 25272,
                            "end": 25279,
                            "loc": {
                              "start": {
                                "line": 633,
                                "column": 17
                              },
                              "end": {
                                "line": 633,
                                "column": 24
                              }
                            },
                            "value": "bulge",
                            "rawValue": "bulge",
                            "raw": "'bulge'"
                          }
                        }
                      ]
                    }
                  ]
                }
              }
            }
          ]
        },
        "leadingComments": [
          {
            "type": "CommentLine",
            "value": "================================ Sketch.Arc =========================================",
            "start": 14060,
            "end": 14147,
            "loc": {
              "start": {
                "line": 369,
                "column": 0
              },
              "end": {
                "line": 369,
                "column": 87
              }
            },
            "range": [
              14060,
              14147
            ]
          }
        ],
        "trailingComments": []
      },
      "specifiers": [],
      "source": null,
      "leadingComments": [
        {
          "type": "CommentLine",
          "value": "================================ Sketch.Arc =========================================",
          "start": 14060,
          "end": 14147,
          "loc": {
            "start": {
              "line": 369,
              "column": 0
            },
            "end": {
              "line": 369,
              "column": 87
            }
          },
          "range": [
            14060,
            14147
          ]
        }
      ]
    },
    {
      "type": "ExpressionStatement",
      "start": 25339,
      "end": 25383,
      "loc": {
        "start": {
          "line": 637,
          "column": 0
        },
        "end": {
          "line": 637,
          "column": 44
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 25339,
        "end": 25382,
        "loc": {
          "start": {
            "line": 637,
            "column": 0
          },
          "end": {
            "line": 637,
            "column": 43
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 25339,
          "end": 25376,
          "loc": {
            "start": {
              "line": 637,
              "column": 0
            },
            "end": {
              "line": 637,
              "column": 37
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 25339,
            "end": 25366,
            "loc": {
              "start": {
                "line": 637,
                "column": 0
              },
              "end": {
                "line": 637,
                "column": 27
              }
            },
            "object": {
              "type": "Identifier",
              "start": 25339,
              "end": 25353,
              "loc": {
                "start": {
                  "line": 637,
                  "column": 0
                },
                "end": {
                  "line": 637,
                  "column": 14
                }
              },
              "name": "ClassCadObject"
            },
            "property": {
              "type": "Identifier",
              "start": 25354,
              "end": 25366,
              "loc": {
                "start": {
                  "line": 637,
                  "column": 15
                },
                "end": {
                  "line": 637,
                  "column": 27
                }
              },
              "name": "classMapping"
            },
            "computed": false
          },
          "property": {
            "type": "Literal",
            "start": 25367,
            "end": 25375,
            "loc": {
              "start": {
                "line": 637,
                "column": 28
              },
              "end": {
                "line": 637,
                "column": 36
              }
            },
            "value": "CC_Arc",
            "rawValue": "CC_Arc",
            "raw": "'CC_Arc'"
          },
          "computed": true
        },
        "right": {
          "type": "Identifier",
          "start": 25379,
          "end": 25382,
          "loc": {
            "start": {
              "line": 637,
              "column": 40
            },
            "end": {
              "line": 637,
              "column": 43
            }
          },
          "name": "Arc"
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 25385,
      "end": 25420,
      "loc": {
        "start": {
          "line": 638,
          "column": 0
        },
        "end": {
          "line": 638,
          "column": 35
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 25385,
        "end": 25419,
        "loc": {
          "start": {
            "line": 638,
            "column": 0
          },
          "end": {
            "line": 638,
            "column": 34
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 25385,
          "end": 25413,
          "loc": {
            "start": {
              "line": 638,
              "column": 0
            },
            "end": {
              "line": 638,
              "column": 28
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 25385,
            "end": 25398,
            "loc": {
              "start": {
                "line": 638,
                "column": 0
              },
              "end": {
                "line": 638,
                "column": 13
              }
            },
            "object": {
              "type": "Identifier",
              "start": 25385,
              "end": 25388,
              "loc": {
                "start": {
                  "line": 638,
                  "column": 0
                },
                "end": {
                  "line": 638,
                  "column": 3
                }
              },
              "name": "Arc"
            },
            "property": {
              "type": "Identifier",
              "start": 25389,
              "end": 25398,
              "loc": {
                "start": {
                  "line": 638,
                  "column": 4
                },
                "end": {
                  "line": 638,
                  "column": 13
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 25399,
            "end": 25413,
            "loc": {
              "start": {
                "line": 638,
                "column": 14
              },
              "end": {
                "line": 638,
                "column": 28
              }
            },
            "name": "meshResolution"
          },
          "computed": false
        },
        "right": {
          "type": "Literal",
          "start": 25416,
          "end": 25419,
          "loc": {
            "start": {
              "line": 638,
              "column": 31
            },
            "end": {
              "line": 638,
              "column": 34
            }
          },
          "value": 100,
          "rawValue": 100,
          "raw": "100"
        }
      },
      "trailingComments": [
        {
          "type": "CommentLine",
          "value": "number of cells in visible triangulation",
          "start": 25422,
          "end": 25464,
          "loc": {
            "start": {
              "line": 638,
              "column": 37
            },
            "end": {
              "line": 638,
              "column": 79
            }
          },
          "range": [
            25422,
            25464
          ]
        },
        {
          "type": "CommentLine",
          "value": "==============================     WorkPlane    ==============================",
          "start": 25468,
          "end": 25548,
          "loc": {
            "start": {
              "line": 640,
              "column": 0
            },
            "end": {
              "line": 640,
              "column": 80
            }
          },
          "range": [
            25468,
            25548
          ]
        }
      ]
    },
    {
      "type": "ExportNamedDeclaration",
      "start": 25550,
      "end": 26551,
      "loc": {
        "start": {
          "line": 641,
          "column": 0
        },
        "end": {
          "line": 667,
          "column": 1
        }
      },
      "declaration": {
        "type": "ClassDeclaration",
        "start": 25557,
        "end": 26551,
        "loc": {
          "start": {
            "line": 641,
            "column": 7
          },
          "end": {
            "line": 667,
            "column": 1
          }
        },
        "id": {
          "type": "Identifier",
          "start": 25563,
          "end": 25572,
          "loc": {
            "start": {
              "line": 641,
              "column": 13
            },
            "end": {
              "line": 641,
              "column": 22
            }
          },
          "name": "WorkPlane",
          "leadingComments": null
        },
        "superClass": {
          "type": "Identifier",
          "start": 25581,
          "end": 25595,
          "loc": {
            "start": {
              "line": 641,
              "column": 31
            },
            "end": {
              "line": 641,
              "column": 45
            }
          },
          "name": "ClassCadObject"
        },
        "body": {
          "type": "ClassBody",
          "start": 25596,
          "end": 26551,
          "loc": {
            "start": {
              "line": 641,
              "column": 46
            },
            "end": {
              "line": 667,
              "column": 1
            }
          },
          "body": [
            {
              "type": "MethodDefinition",
              "start": 25603,
              "end": 26043,
              "loc": {
                "start": {
                  "line": 642,
                  "column": 4
                },
                "end": {
                  "line": 652,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 25603,
                "end": 25614,
                "loc": {
                  "start": {
                    "line": 642,
                    "column": 4
                  },
                  "end": {
                    "line": 642,
                    "column": 15
                  }
                },
                "name": "constructor"
              },
              "static": false,
              "kind": "constructor",
              "value": {
                "type": "FunctionExpression",
                "start": 25614,
                "end": 26043,
                "loc": {
                  "start": {
                    "line": 642,
                    "column": 15
                  },
                  "end": {
                    "line": 652,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 25617,
                  "end": 26043,
                  "loc": {
                    "start": {
                      "line": 642,
                      "column": 18
                    },
                    "end": {
                      "line": 652,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 25628,
                      "end": 25636,
                      "loc": {
                        "start": {
                          "line": 643,
                          "column": 8
                        },
                        "end": {
                          "line": 643,
                          "column": 16
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 25628,
                        "end": 25635,
                        "loc": {
                          "start": {
                            "line": 643,
                            "column": 8
                          },
                          "end": {
                            "line": 643,
                            "column": 15
                          }
                        },
                        "callee": {
                          "type": "Super",
                          "start": 25628,
                          "end": 25633,
                          "loc": {
                            "start": {
                              "line": 643,
                              "column": 8
                            },
                            "end": {
                              "line": 643,
                              "column": 13
                            }
                          }
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 25646,
                      "end": 25970,
                      "loc": {
                        "start": {
                          "line": 644,
                          "column": 8
                        },
                        "end": {
                          "line": 649,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 25646,
                        "end": 25969,
                        "loc": {
                          "start": {
                            "line": 644,
                            "column": 8
                          },
                          "end": {
                            "line": 649,
                            "column": 10
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 25646,
                          "end": 25655,
                          "loc": {
                            "start": {
                              "line": 644,
                              "column": 8
                            },
                            "end": {
                              "line": 644,
                              "column": 17
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 25646,
                            "end": 25650,
                            "loc": {
                              "start": {
                                "line": 644,
                                "column": 8
                              },
                              "end": {
                                "line": 644,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 25651,
                            "end": 25655,
                            "loc": {
                              "start": {
                                "line": 644,
                                "column": 13
                              },
                              "end": {
                                "line": 644,
                                "column": 17
                              }
                            },
                            "name": "mesh"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 25658,
                          "end": 25969,
                          "loc": {
                            "start": {
                              "line": 644,
                              "column": 20
                            },
                            "end": {
                              "line": 649,
                              "column": 10
                            }
                          },
                          "callee": {
                            "type": "Identifier",
                            "start": 25662,
                            "end": 25674,
                            "loc": {
                              "start": {
                                "line": 644,
                                "column": 24
                              },
                              "end": {
                                "line": 644,
                                "column": 36
                              }
                            },
                            "name": "InteractMesh"
                          },
                          "arguments": [
                            {
                              "type": "NewExpression",
                              "start": 25675,
                              "end": 25705,
                              "loc": {
                                "start": {
                                  "line": 644,
                                  "column": 37
                                },
                                "end": {
                                  "line": 644,
                                  "column": 67
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 25679,
                                "end": 25696,
                                "loc": {
                                  "start": {
                                    "line": 644,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 644,
                                    "column": 58
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 25679,
                                  "end": 25684,
                                  "loc": {
                                    "start": {
                                      "line": 644,
                                      "column": 41
                                    },
                                    "end": {
                                      "line": 644,
                                      "column": 46
                                    }
                                  },
                                  "name": "THREE"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 25685,
                                  "end": 25696,
                                  "loc": {
                                    "start": {
                                      "line": 644,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 644,
                                      "column": 58
                                    }
                                  },
                                  "name": "BoxGeometry"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 25697,
                                  "end": 25698,
                                  "loc": {
                                    "start": {
                                      "line": 644,
                                      "column": 59
                                    },
                                    "end": {
                                      "line": 644,
                                      "column": 60
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                },
                                {
                                  "type": "Literal",
                                  "start": 25700,
                                  "end": 25701,
                                  "loc": {
                                    "start": {
                                      "line": 644,
                                      "column": 62
                                    },
                                    "end": {
                                      "line": 644,
                                      "column": 63
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                },
                                {
                                  "type": "Literal",
                                  "start": 25703,
                                  "end": 25704,
                                  "loc": {
                                    "start": {
                                      "line": 644,
                                      "column": 65
                                    },
                                    "end": {
                                      "line": 644,
                                      "column": 66
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            },
                            {
                              "type": "NewExpression",
                              "start": 25707,
                              "end": 25968,
                              "loc": {
                                "start": {
                                  "line": 644,
                                  "column": 69
                                },
                                "end": {
                                  "line": 649,
                                  "column": 9
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 25711,
                                "end": 25734,
                                "loc": {
                                  "start": {
                                    "line": 644,
                                    "column": 73
                                  },
                                  "end": {
                                    "line": 644,
                                    "column": 96
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 25711,
                                  "end": 25716,
                                  "loc": {
                                    "start": {
                                      "line": 644,
                                      "column": 73
                                    },
                                    "end": {
                                      "line": 644,
                                      "column": 78
                                    }
                                  },
                                  "name": "THREE"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 25717,
                                  "end": 25734,
                                  "loc": {
                                    "start": {
                                      "line": 644,
                                      "column": 79
                                    },
                                    "end": {
                                      "line": 644,
                                      "column": 96
                                    }
                                  },
                                  "name": "MeshBasicMaterial"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ObjectExpression",
                                  "start": 25749,
                                  "end": 25957,
                                  "loc": {
                                    "start": {
                                      "line": 645,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 648,
                                      "column": 13
                                    }
                                  },
                                  "properties": [
                                    {
                                      "type": "Property",
                                      "start": 25750,
                                      "end": 25778,
                                      "loc": {
                                        "start": {
                                          "line": 645,
                                          "column": 13
                                        },
                                        "end": {
                                          "line": 645,
                                          "column": 41
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 25750,
                                        "end": 25755,
                                        "loc": {
                                          "start": {
                                            "line": 645,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 645,
                                            "column": 18
                                          }
                                        },
                                        "name": "color"
                                      },
                                      "value": {
                                        "type": "CallExpression",
                                        "start": 25757,
                                        "end": 25778,
                                        "loc": {
                                          "start": {
                                            "line": 645,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 645,
                                            "column": 41
                                          }
                                        },
                                        "callee": {
                                          "type": "Identifier",
                                          "start": 25757,
                                          "end": 25765,
                                          "loc": {
                                            "start": {
                                              "line": 645,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 645,
                                              "column": 28
                                            }
                                          },
                                          "name": "getColor"
                                        },
                                        "arguments": [
                                          {
                                            "type": "ThisExpression",
                                            "start": 25766,
                                            "end": 25770,
                                            "loc": {
                                              "start": {
                                                "line": 645,
                                                "column": 29
                                              },
                                              "end": {
                                                "line": 645,
                                                "column": 33
                                              }
                                            }
                                          },
                                          {
                                            "type": "Literal",
                                            "start": 25772,
                                            "end": 25777,
                                            "loc": {
                                              "start": {
                                                "line": 645,
                                                "column": 35
                                              },
                                              "end": {
                                                "line": 645,
                                                "column": 40
                                              }
                                            },
                                            "value": false,
                                            "rawValue": false,
                                            "raw": "false"
                                          }
                                        ]
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 25780,
                                      "end": 25802,
                                      "loc": {
                                        "start": {
                                          "line": 645,
                                          "column": 43
                                        },
                                        "end": {
                                          "line": 645,
                                          "column": 65
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 25780,
                                        "end": 25784,
                                        "loc": {
                                          "start": {
                                            "line": 645,
                                            "column": 43
                                          },
                                          "end": {
                                            "line": 645,
                                            "column": 47
                                          }
                                        },
                                        "name": "side"
                                      },
                                      "value": {
                                        "type": "MemberExpression",
                                        "start": 25786,
                                        "end": 25802,
                                        "loc": {
                                          "start": {
                                            "line": 645,
                                            "column": 49
                                          },
                                          "end": {
                                            "line": 645,
                                            "column": 65
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 25786,
                                          "end": 25791,
                                          "loc": {
                                            "start": {
                                              "line": 645,
                                              "column": 49
                                            },
                                            "end": {
                                              "line": 645,
                                              "column": 54
                                            }
                                          },
                                          "name": "THREE"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 25792,
                                          "end": 25802,
                                          "loc": {
                                            "start": {
                                              "line": 645,
                                              "column": 55
                                            },
                                            "end": {
                                              "line": 645,
                                              "column": 65
                                            }
                                          },
                                          "name": "DoubleSide"
                                        },
                                        "computed": false
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 25821,
                                      "end": 25840,
                                      "loc": {
                                        "start": {
                                          "line": 646,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 646,
                                          "column": 35
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 25821,
                                        "end": 25834,
                                        "loc": {
                                          "start": {
                                            "line": 646,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 646,
                                            "column": 29
                                          }
                                        },
                                        "name": "polygonOffset"
                                      },
                                      "value": {
                                        "type": "Literal",
                                        "start": 25836,
                                        "end": 25840,
                                        "loc": {
                                          "start": {
                                            "line": 646,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 646,
                                            "column": 35
                                          }
                                        },
                                        "value": true,
                                        "rawValue": true,
                                        "raw": "true"
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 25842,
                                      "end": 25865,
                                      "loc": {
                                        "start": {
                                          "line": 646,
                                          "column": 37
                                        },
                                        "end": {
                                          "line": 646,
                                          "column": 60
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 25842,
                                        "end": 25861,
                                        "loc": {
                                          "start": {
                                            "line": 646,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 646,
                                            "column": 56
                                          }
                                        },
                                        "name": "polygonOffsetFactor"
                                      },
                                      "value": {
                                        "type": "UnaryExpression",
                                        "start": 25863,
                                        "end": 25865,
                                        "loc": {
                                          "start": {
                                            "line": 646,
                                            "column": 58
                                          },
                                          "end": {
                                            "line": 646,
                                            "column": 60
                                          }
                                        },
                                        "operator": "-",
                                        "prefix": true,
                                        "argument": {
                                          "type": "Literal",
                                          "start": 25864,
                                          "end": 25865,
                                          "loc": {
                                            "start": {
                                              "line": 646,
                                              "column": 59
                                            },
                                            "end": {
                                              "line": 646,
                                              "column": 60
                                            }
                                          },
                                          "value": 1,
                                          "rawValue": 1,
                                          "raw": "1"
                                        }
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 25867,
                                      "end": 25890,
                                      "loc": {
                                        "start": {
                                          "line": 646,
                                          "column": 62
                                        },
                                        "end": {
                                          "line": 646,
                                          "column": 85
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 25867,
                                        "end": 25885,
                                        "loc": {
                                          "start": {
                                            "line": 646,
                                            "column": 62
                                          },
                                          "end": {
                                            "line": 646,
                                            "column": 80
                                          }
                                        },
                                        "name": "polygonOffsetUnits"
                                      },
                                      "value": {
                                        "type": "UnaryExpression",
                                        "start": 25888,
                                        "end": 25890,
                                        "loc": {
                                          "start": {
                                            "line": 646,
                                            "column": 83
                                          },
                                          "end": {
                                            "line": 646,
                                            "column": 85
                                          }
                                        },
                                        "operator": "-",
                                        "prefix": true,
                                        "argument": {
                                          "type": "Literal",
                                          "start": 25889,
                                          "end": 25890,
                                          "loc": {
                                            "start": {
                                              "line": 646,
                                              "column": 84
                                            },
                                            "end": {
                                              "line": 646,
                                              "column": 85
                                            }
                                          },
                                          "value": 5,
                                          "rawValue": 5,
                                          "raw": "5"
                                        }
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 25909,
                                      "end": 25926,
                                      "loc": {
                                        "start": {
                                          "line": 647,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 647,
                                          "column": 33
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 25909,
                                        "end": 25920,
                                        "loc": {
                                          "start": {
                                            "line": 647,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 647,
                                            "column": 27
                                          }
                                        },
                                        "name": "transparent"
                                      },
                                      "value": {
                                        "type": "Literal",
                                        "start": 25922,
                                        "end": 25926,
                                        "loc": {
                                          "start": {
                                            "line": 647,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 647,
                                            "column": 33
                                          }
                                        },
                                        "value": true,
                                        "rawValue": true,
                                        "raw": "true"
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 25928,
                                      "end": 25941,
                                      "loc": {
                                        "start": {
                                          "line": 647,
                                          "column": 35
                                        },
                                        "end": {
                                          "line": 647,
                                          "column": 48
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 25928,
                                        "end": 25935,
                                        "loc": {
                                          "start": {
                                            "line": 647,
                                            "column": 35
                                          },
                                          "end": {
                                            "line": 647,
                                            "column": 42
                                          }
                                        },
                                        "name": "opacity"
                                      },
                                      "value": {
                                        "type": "Literal",
                                        "start": 25937,
                                        "end": 25941,
                                        "loc": {
                                          "start": {
                                            "line": 647,
                                            "column": 44
                                          },
                                          "end": {
                                            "line": 647,
                                            "column": 48
                                          }
                                        },
                                        "value": 0.25,
                                        "rawValue": 0.25,
                                        "raw": "0.25"
                                      },
                                      "kind": "init"
                                    }
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 25980,
                      "end": 26006,
                      "loc": {
                        "start": {
                          "line": 650,
                          "column": 8
                        },
                        "end": {
                          "line": 650,
                          "column": 34
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 25980,
                        "end": 26005,
                        "loc": {
                          "start": {
                            "line": 650,
                            "column": 8
                          },
                          "end": {
                            "line": 650,
                            "column": 33
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 25980,
                          "end": 25993,
                          "loc": {
                            "start": {
                              "line": 650,
                              "column": 8
                            },
                            "end": {
                              "line": 650,
                              "column": 21
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 25980,
                            "end": 25984,
                            "loc": {
                              "start": {
                                "line": 650,
                                "column": 8
                              },
                              "end": {
                                "line": 650,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 25985,
                            "end": 25993,
                            "loc": {
                              "start": {
                                "line": 650,
                                "column": 13
                              },
                              "end": {
                                "line": 650,
                                "column": 21
                              }
                            },
                            "name": "interact"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 25996,
                          "end": 26005,
                          "loc": {
                            "start": {
                              "line": 650,
                              "column": 24
                            },
                            "end": {
                              "line": 650,
                              "column": 33
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 25996,
                            "end": 26000,
                            "loc": {
                              "start": {
                                "line": 650,
                                "column": 24
                              },
                              "end": {
                                "line": 650,
                                "column": 28
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 26001,
                            "end": 26005,
                            "loc": {
                              "start": {
                                "line": 650,
                                "column": 29
                              },
                              "end": {
                                "line": 650,
                                "column": 33
                              }
                            },
                            "name": "mesh"
                          },
                          "computed": false
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 26016,
                      "end": 26036,
                      "loc": {
                        "start": {
                          "line": 651,
                          "column": 8
                        },
                        "end": {
                          "line": 651,
                          "column": 28
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 26016,
                        "end": 26035,
                        "loc": {
                          "start": {
                            "line": 651,
                            "column": 8
                          },
                          "end": {
                            "line": 651,
                            "column": 27
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 26016,
                          "end": 26024,
                          "loc": {
                            "start": {
                              "line": 651,
                              "column": 8
                            },
                            "end": {
                              "line": 651,
                              "column": 16
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 26016,
                            "end": 26020,
                            "loc": {
                              "start": {
                                "line": 651,
                                "column": 8
                              },
                              "end": {
                                "line": 651,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 26021,
                            "end": 26024,
                            "loc": {
                              "start": {
                                "line": 651,
                                "column": 13
                              },
                              "end": {
                                "line": 651,
                                "column": 16
                              }
                            },
                            "name": "add"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 26025,
                            "end": 26034,
                            "loc": {
                              "start": {
                                "line": 651,
                                "column": 17
                              },
                              "end": {
                                "line": 651,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 26025,
                              "end": 26029,
                              "loc": {
                                "start": {
                                  "line": 651,
                                  "column": 17
                                },
                                "end": {
                                  "line": 651,
                                  "column": 21
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 26030,
                              "end": 26034,
                              "loc": {
                                "start": {
                                  "line": 651,
                                  "column": 22
                                },
                                "end": {
                                  "line": 651,
                                  "column": 26
                                }
                              },
                              "name": "mesh"
                            },
                            "computed": false
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 26051,
              "end": 26464,
              "loc": {
                "start": {
                  "line": 654,
                  "column": 4
                },
                "end": {
                  "line": 662,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 26051,
                "end": 26060,
                "loc": {
                  "start": {
                    "line": 654,
                    "column": 4
                  },
                  "end": {
                    "line": 654,
                    "column": 13
                  }
                },
                "name": "addMember"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 26060,
                "end": 26464,
                "loc": {
                  "start": {
                    "line": 654,
                    "column": 13
                  },
                  "end": {
                    "line": 662,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 26061,
                    "end": 26067,
                    "loc": {
                      "start": {
                        "line": 654,
                        "column": 14
                      },
                      "end": {
                        "line": 654,
                        "column": 20
                      }
                    },
                    "name": "member"
                  },
                  {
                    "type": "Identifier",
                    "start": 26069,
                    "end": 26073,
                    "loc": {
                      "start": {
                        "line": 654,
                        "column": 22
                      },
                      "end": {
                        "line": 654,
                        "column": 26
                      }
                    },
                    "name": "mark"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 26075,
                  "end": 26464,
                  "loc": {
                    "start": {
                      "line": 654,
                      "column": 28
                    },
                    "end": {
                      "line": 662,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 26086,
                      "end": 26116,
                      "loc": {
                        "start": {
                          "line": 655,
                          "column": 8
                        },
                        "end": {
                          "line": 655,
                          "column": 38
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 26086,
                        "end": 26115,
                        "loc": {
                          "start": {
                            "line": 655,
                            "column": 8
                          },
                          "end": {
                            "line": 655,
                            "column": 37
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 26086,
                          "end": 26101,
                          "loc": {
                            "start": {
                              "line": 655,
                              "column": 8
                            },
                            "end": {
                              "line": 655,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "Super",
                            "start": 26086,
                            "end": 26091,
                            "loc": {
                              "start": {
                                "line": 655,
                                "column": 8
                              },
                              "end": {
                                "line": 655,
                                "column": 13
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 26092,
                            "end": 26101,
                            "loc": {
                              "start": {
                                "line": 655,
                                "column": 14
                              },
                              "end": {
                                "line": 655,
                                "column": 23
                              }
                            },
                            "name": "addMember"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 26102,
                            "end": 26108,
                            "loc": {
                              "start": {
                                "line": 655,
                                "column": 24
                              },
                              "end": {
                                "line": 655,
                                "column": 30
                              }
                            },
                            "name": "member"
                          },
                          {
                            "type": "Identifier",
                            "start": 26110,
                            "end": 26114,
                            "loc": {
                              "start": {
                                "line": 655,
                                "column": 32
                              },
                              "end": {
                                "line": 655,
                                "column": 36
                              }
                            },
                            "name": "mark"
                          }
                        ]
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 26126,
                      "end": 26162,
                      "loc": {
                        "start": {
                          "line": 656,
                          "column": 8
                        },
                        "end": {
                          "line": 656,
                          "column": 44
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 26130,
                          "end": 26161,
                          "loc": {
                            "start": {
                              "line": 656,
                              "column": 12
                            },
                            "end": {
                              "line": 656,
                              "column": 43
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 26130,
                            "end": 26132,
                            "loc": {
                              "start": {
                                "line": 656,
                                "column": 12
                              },
                              "end": {
                                "line": 656,
                                "column": 14
                              }
                            },
                            "name": "mi"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 26135,
                            "end": 26161,
                            "loc": {
                              "start": {
                                "line": 656,
                                "column": 17
                              },
                              "end": {
                                "line": 656,
                                "column": 43
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 26135,
                              "end": 26150,
                              "loc": {
                                "start": {
                                  "line": 656,
                                  "column": 17
                                },
                                "end": {
                                  "line": 656,
                                  "column": 32
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 26135,
                                "end": 26141,
                                "loc": {
                                  "start": {
                                    "line": 656,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 656,
                                    "column": 23
                                  }
                                },
                                "name": "member"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 26142,
                                "end": 26150,
                                "loc": {
                                  "start": {
                                    "line": 656,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 656,
                                    "column": 32
                                  }
                                },
                                "name": "userData"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 26151,
                              "end": 26161,
                              "loc": {
                                "start": {
                                  "line": 656,
                                  "column": 33
                                },
                                "end": {
                                  "line": 656,
                                  "column": 43
                                }
                              },
                              "name": "memberInfo"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "let"
                    },
                    {
                      "type": "SwitchStatement",
                      "start": 26172,
                      "end": 26457,
                      "loc": {
                        "start": {
                          "line": 657,
                          "column": 8
                        },
                        "end": {
                          "line": 661,
                          "column": 9
                        }
                      },
                      "discriminant": {
                        "type": "MemberExpression",
                        "start": 26180,
                        "end": 26187,
                        "loc": {
                          "start": {
                            "line": 657,
                            "column": 16
                          },
                          "end": {
                            "line": 657,
                            "column": 23
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 26180,
                          "end": 26182,
                          "loc": {
                            "start": {
                              "line": 657,
                              "column": 16
                            },
                            "end": {
                              "line": 657,
                              "column": 18
                            }
                          },
                          "name": "mi"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 26183,
                          "end": 26187,
                          "loc": {
                            "start": {
                              "line": 657,
                              "column": 19
                            },
                            "end": {
                              "line": 657,
                              "column": 23
                            }
                          },
                          "name": "name"
                        },
                        "computed": false
                      },
                      "cases": [
                        {
                          "type": "SwitchCase",
                          "start": 26204,
                          "end": 26255,
                          "loc": {
                            "start": {
                              "line": 658,
                              "column": 12
                            },
                            "end": {
                              "line": 658,
                              "column": 63
                            }
                          },
                          "consequent": [
                            {
                              "type": "ExpressionStatement",
                              "start": 26221,
                              "end": 26248,
                              "loc": {
                                "start": {
                                  "line": 658,
                                  "column": 29
                                },
                                "end": {
                                  "line": 658,
                                  "column": 56
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 26221,
                                "end": 26247,
                                "loc": {
                                  "start": {
                                    "line": 658,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 658,
                                    "column": 55
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 26221,
                                  "end": 26239,
                                  "loc": {
                                    "start": {
                                      "line": 658,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 658,
                                      "column": 47
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 26221,
                                    "end": 26234,
                                    "loc": {
                                      "start": {
                                        "line": 658,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 658,
                                        "column": 42
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 26221,
                                      "end": 26225,
                                      "loc": {
                                        "start": {
                                          "line": 658,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 658,
                                          "column": 33
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 26226,
                                      "end": 26234,
                                      "loc": {
                                        "start": {
                                          "line": 658,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 658,
                                          "column": 42
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 26235,
                                    "end": 26239,
                                    "loc": {
                                      "start": {
                                        "line": 658,
                                        "column": 43
                                      },
                                      "end": {
                                        "line": 658,
                                        "column": 47
                                      }
                                    },
                                    "name": "copy"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 26240,
                                    "end": 26246,
                                    "loc": {
                                      "start": {
                                        "line": 658,
                                        "column": 48
                                      },
                                      "end": {
                                        "line": 658,
                                        "column": 54
                                      }
                                    },
                                    "name": "member"
                                  }
                                ]
                              }
                            },
                            {
                              "type": "BreakStatement",
                              "start": 26249,
                              "end": 26255,
                              "loc": {
                                "start": {
                                  "line": 658,
                                  "column": 57
                                },
                                "end": {
                                  "line": 658,
                                  "column": 63
                                }
                              },
                              "label": null
                            }
                          ],
                          "test": {
                            "type": "Literal",
                            "start": 26209,
                            "end": 26219,
                            "loc": {
                              "start": {
                                "line": 658,
                                "column": 17
                              },
                              "end": {
                                "line": 658,
                                "column": 27
                              }
                            },
                            "value": "Position",
                            "rawValue": "Position",
                            "raw": "'Position'"
                          }
                        },
                        {
                          "type": "SwitchCase",
                          "start": 26269,
                          "end": 26362,
                          "loc": {
                            "start": {
                              "line": 659,
                              "column": 12
                            },
                            "end": {
                              "line": 659,
                              "column": 105
                            }
                          },
                          "consequent": [
                            {
                              "type": "ExpressionStatement",
                              "start": 26284,
                              "end": 26355,
                              "loc": {
                                "start": {
                                  "line": 659,
                                  "column": 27
                                },
                                "end": {
                                  "line": 659,
                                  "column": 98
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 26284,
                                "end": 26354,
                                "loc": {
                                  "start": {
                                    "line": 659,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 659,
                                    "column": 97
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 26284,
                                  "end": 26318,
                                  "loc": {
                                    "start": {
                                      "line": 659,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 659,
                                      "column": 61
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 26284,
                                    "end": 26299,
                                    "loc": {
                                      "start": {
                                        "line": 659,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 659,
                                        "column": 42
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 26284,
                                      "end": 26288,
                                      "loc": {
                                        "start": {
                                          "line": 659,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 659,
                                          "column": 31
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 26289,
                                      "end": 26299,
                                      "loc": {
                                        "start": {
                                          "line": 659,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 659,
                                          "column": 42
                                        }
                                      },
                                      "name": "quaternion"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 26300,
                                    "end": 26318,
                                    "loc": {
                                      "start": {
                                        "line": 659,
                                        "column": 43
                                      },
                                      "end": {
                                        "line": 659,
                                        "column": 61
                                      }
                                    },
                                    "name": "setFromUnitVectors"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "NewExpression",
                                    "start": 26319,
                                    "end": 26345,
                                    "loc": {
                                      "start": {
                                        "line": 659,
                                        "column": 62
                                      },
                                      "end": {
                                        "line": 659,
                                        "column": 88
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 26323,
                                      "end": 26336,
                                      "loc": {
                                        "start": {
                                          "line": 659,
                                          "column": 66
                                        },
                                        "end": {
                                          "line": 659,
                                          "column": 79
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 26323,
                                        "end": 26328,
                                        "loc": {
                                          "start": {
                                            "line": 659,
                                            "column": 66
                                          },
                                          "end": {
                                            "line": 659,
                                            "column": 71
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 26329,
                                        "end": 26336,
                                        "loc": {
                                          "start": {
                                            "line": 659,
                                            "column": 72
                                          },
                                          "end": {
                                            "line": 659,
                                            "column": 79
                                          }
                                        },
                                        "name": "Vector3"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Literal",
                                        "start": 26337,
                                        "end": 26338,
                                        "loc": {
                                          "start": {
                                            "line": 659,
                                            "column": 80
                                          },
                                          "end": {
                                            "line": 659,
                                            "column": 81
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 26340,
                                        "end": 26341,
                                        "loc": {
                                          "start": {
                                            "line": 659,
                                            "column": 83
                                          },
                                          "end": {
                                            "line": 659,
                                            "column": 84
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 26343,
                                        "end": 26344,
                                        "loc": {
                                          "start": {
                                            "line": 659,
                                            "column": 86
                                          },
                                          "end": {
                                            "line": 659,
                                            "column": 87
                                          }
                                        },
                                        "value": 1,
                                        "rawValue": 1,
                                        "raw": "1"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "Identifier",
                                    "start": 26347,
                                    "end": 26353,
                                    "loc": {
                                      "start": {
                                        "line": 659,
                                        "column": 90
                                      },
                                      "end": {
                                        "line": 659,
                                        "column": 96
                                      }
                                    },
                                    "name": "member"
                                  }
                                ]
                              }
                            },
                            {
                              "type": "BreakStatement",
                              "start": 26356,
                              "end": 26362,
                              "loc": {
                                "start": {
                                  "line": 659,
                                  "column": 99
                                },
                                "end": {
                                  "line": 659,
                                  "column": 105
                                }
                              },
                              "label": null
                            }
                          ],
                          "test": {
                            "type": "Literal",
                            "start": 26274,
                            "end": 26282,
                            "loc": {
                              "start": {
                                "line": 659,
                                "column": 17
                              },
                              "end": {
                                "line": 659,
                                "column": 25
                              }
                            },
                            "value": "Normal",
                            "rawValue": "Normal",
                            "raw": "'Normal'"
                          }
                        },
                        {
                          "type": "SwitchCase",
                          "start": 26376,
                          "end": 26446,
                          "loc": {
                            "start": {
                              "line": 660,
                              "column": 12
                            },
                            "end": {
                              "line": 660,
                              "column": 82
                            }
                          },
                          "consequent": [
                            {
                              "type": "VariableDeclaration",
                              "start": 26389,
                              "end": 26414,
                              "loc": {
                                "start": {
                                  "line": 660,
                                  "column": 25
                                },
                                "end": {
                                  "line": 660,
                                  "column": 50
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 26393,
                                  "end": 26413,
                                  "loc": {
                                    "start": {
                                      "line": 660,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 660,
                                      "column": 49
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 26393,
                                    "end": 26394,
                                    "loc": {
                                      "start": {
                                        "line": 660,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 660,
                                        "column": 30
                                      }
                                    },
                                    "name": "s"
                                  },
                                  "init": {
                                    "type": "CallExpression",
                                    "start": 26397,
                                    "end": 26413,
                                    "loc": {
                                      "start": {
                                        "line": 660,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 660,
                                        "column": 49
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 26397,
                                      "end": 26411,
                                      "loc": {
                                        "start": {
                                          "line": 660,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 660,
                                          "column": 47
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 26397,
                                        "end": 26403,
                                        "loc": {
                                          "start": {
                                            "line": 660,
                                            "column": 33
                                          },
                                          "end": {
                                            "line": 660,
                                            "column": 39
                                          }
                                        },
                                        "name": "member"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 26404,
                                        "end": 26411,
                                        "loc": {
                                          "start": {
                                            "line": 660,
                                            "column": 40
                                          },
                                          "end": {
                                            "line": 660,
                                            "column": 47
                                          }
                                        },
                                        "name": "valueOf"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                }
                              ],
                              "kind": "let"
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 26415,
                              "end": 26439,
                              "loc": {
                                "start": {
                                  "line": 660,
                                  "column": 51
                                },
                                "end": {
                                  "line": 660,
                                  "column": 75
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 26415,
                                "end": 26438,
                                "loc": {
                                  "start": {
                                    "line": 660,
                                    "column": 51
                                  },
                                  "end": {
                                    "line": 660,
                                    "column": 74
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 26415,
                                  "end": 26429,
                                  "loc": {
                                    "start": {
                                      "line": 660,
                                      "column": 51
                                    },
                                    "end": {
                                      "line": 660,
                                      "column": 65
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 26415,
                                    "end": 26425,
                                    "loc": {
                                      "start": {
                                        "line": 660,
                                        "column": 51
                                      },
                                      "end": {
                                        "line": 660,
                                        "column": 61
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 26415,
                                      "end": 26419,
                                      "loc": {
                                        "start": {
                                          "line": 660,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 660,
                                          "column": 55
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 26420,
                                      "end": 26425,
                                      "loc": {
                                        "start": {
                                          "line": 660,
                                          "column": 56
                                        },
                                        "end": {
                                          "line": 660,
                                          "column": 61
                                        }
                                      },
                                      "name": "scale"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 26426,
                                    "end": 26429,
                                    "loc": {
                                      "start": {
                                        "line": 660,
                                        "column": 62
                                      },
                                      "end": {
                                        "line": 660,
                                        "column": 65
                                      }
                                    },
                                    "name": "set"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 26430,
                                    "end": 26431,
                                    "loc": {
                                      "start": {
                                        "line": 660,
                                        "column": 66
                                      },
                                      "end": {
                                        "line": 660,
                                        "column": 67
                                      }
                                    },
                                    "name": "s"
                                  },
                                  {
                                    "type": "Identifier",
                                    "start": 26433,
                                    "end": 26434,
                                    "loc": {
                                      "start": {
                                        "line": 660,
                                        "column": 69
                                      },
                                      "end": {
                                        "line": 660,
                                        "column": 70
                                      }
                                    },
                                    "name": "s"
                                  },
                                  {
                                    "type": "Literal",
                                    "start": 26436,
                                    "end": 26437,
                                    "loc": {
                                      "start": {
                                        "line": 660,
                                        "column": 72
                                      },
                                      "end": {
                                        "line": 660,
                                        "column": 73
                                      }
                                    },
                                    "value": 1,
                                    "rawValue": 1,
                                    "raw": "1"
                                  }
                                ]
                              }
                            },
                            {
                              "type": "BreakStatement",
                              "start": 26440,
                              "end": 26446,
                              "loc": {
                                "start": {
                                  "line": 660,
                                  "column": 76
                                },
                                "end": {
                                  "line": 660,
                                  "column": 82
                                }
                              },
                              "label": null
                            }
                          ],
                          "test": {
                            "type": "Literal",
                            "start": 26381,
                            "end": 26387,
                            "loc": {
                              "start": {
                                "line": 660,
                                "column": 17
                              },
                              "end": {
                                "line": 660,
                                "column": 23
                              }
                            },
                            "value": "Size",
                            "rawValue": "Size",
                            "raw": "'Size'"
                          }
                        }
                      ]
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 26472,
              "end": 26548,
              "loc": {
                "start": {
                  "line": 664,
                  "column": 4
                },
                "end": {
                  "line": 666,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 26472,
                "end": 26488,
                "loc": {
                  "start": {
                    "line": 664,
                    "column": 4
                  },
                  "end": {
                    "line": 664,
                    "column": 20
                  }
                },
                "name": "finishedUpdating"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 26488,
                "end": 26548,
                "loc": {
                  "start": {
                    "line": 664,
                    "column": 20
                  },
                  "end": {
                    "line": 666,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 26491,
                  "end": 26548,
                  "loc": {
                    "start": {
                      "line": 664,
                      "column": 23
                    },
                    "end": {
                      "line": 666,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 26502,
                      "end": 26541,
                      "loc": {
                        "start": {
                          "line": 665,
                          "column": 8
                        },
                        "end": {
                          "line": 665,
                          "column": 47
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 26502,
                        "end": 26540,
                        "loc": {
                          "start": {
                            "line": 665,
                            "column": 8
                          },
                          "end": {
                            "line": 665,
                            "column": 46
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 26502,
                          "end": 26513,
                          "loc": {
                            "start": {
                              "line": 665,
                              "column": 8
                            },
                            "end": {
                              "line": 665,
                              "column": 19
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 26502,
                            "end": 26506,
                            "loc": {
                              "start": {
                                "line": 665,
                                "column": 8
                              },
                              "end": {
                                "line": 665,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 26507,
                            "end": 26513,
                            "loc": {
                              "start": {
                                "line": 665,
                                "column": 13
                              },
                              "end": {
                                "line": 665,
                                "column": 19
                              }
                            },
                            "name": "bubble"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 26514,
                            "end": 26533,
                            "loc": {
                              "start": {
                                "line": 665,
                                "column": 20
                              },
                              "end": {
                                "line": 665,
                                "column": 39
                              }
                            },
                            "value": "Updated.WorkPlane",
                            "rawValue": "Updated.WorkPlane",
                            "raw": "'Updated.WorkPlane'"
                          },
                          {
                            "type": "ThisExpression",
                            "start": 26535,
                            "end": 26539,
                            "loc": {
                              "start": {
                                "line": 665,
                                "column": 41
                              },
                              "end": {
                                "line": 665,
                                "column": 45
                              }
                            }
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            }
          ]
        },
        "leadingComments": [
          {
            "type": "CommentLine",
            "value": "number of cells in visible triangulation",
            "start": 25422,
            "end": 25464,
            "loc": {
              "start": {
                "line": 638,
                "column": 37
              },
              "end": {
                "line": 638,
                "column": 79
              }
            },
            "range": [
              25422,
              25464
            ]
          },
          {
            "type": "CommentLine",
            "value": "==============================     WorkPlane    ==============================",
            "start": 25468,
            "end": 25548,
            "loc": {
              "start": {
                "line": 640,
                "column": 0
              },
              "end": {
                "line": 640,
                "column": 80
              }
            },
            "range": [
              25468,
              25548
            ]
          }
        ],
        "trailingComments": []
      },
      "specifiers": [],
      "source": null,
      "leadingComments": [
        {
          "type": "CommentLine",
          "value": "number of cells in visible triangulation",
          "start": 25422,
          "end": 25464,
          "loc": {
            "start": {
              "line": 638,
              "column": 37
            },
            "end": {
              "line": 638,
              "column": 79
            }
          },
          "range": [
            25422,
            25464
          ]
        },
        {
          "type": "CommentLine",
          "value": "==============================     WorkPlane    ==============================",
          "start": 25468,
          "end": 25548,
          "loc": {
            "start": {
              "line": 640,
              "column": 0
            },
            "end": {
              "line": 640,
              "column": 80
            }
          },
          "range": [
            25468,
            25548
          ]
        }
      ]
    },
    {
      "type": "ExpressionStatement",
      "start": 26553,
      "end": 26609,
      "loc": {
        "start": {
          "line": 668,
          "column": 0
        },
        "end": {
          "line": 668,
          "column": 56
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 26553,
        "end": 26608,
        "loc": {
          "start": {
            "line": 668,
            "column": 0
          },
          "end": {
            "line": 668,
            "column": 55
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 26553,
          "end": 26596,
          "loc": {
            "start": {
              "line": 668,
              "column": 0
            },
            "end": {
              "line": 668,
              "column": 43
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 26553,
            "end": 26580,
            "loc": {
              "start": {
                "line": 668,
                "column": 0
              },
              "end": {
                "line": 668,
                "column": 27
              }
            },
            "object": {
              "type": "Identifier",
              "start": 26553,
              "end": 26567,
              "loc": {
                "start": {
                  "line": 668,
                  "column": 0
                },
                "end": {
                  "line": 668,
                  "column": 14
                }
              },
              "name": "ClassCadObject"
            },
            "property": {
              "type": "Identifier",
              "start": 26568,
              "end": 26580,
              "loc": {
                "start": {
                  "line": 668,
                  "column": 15
                },
                "end": {
                  "line": 668,
                  "column": 27
                }
              },
              "name": "classMapping"
            },
            "computed": false
          },
          "property": {
            "type": "Literal",
            "start": 26581,
            "end": 26595,
            "loc": {
              "start": {
                "line": 668,
                "column": 28
              },
              "end": {
                "line": 668,
                "column": 42
              }
            },
            "value": "CC_WorkPlane",
            "rawValue": "CC_WorkPlane",
            "raw": "'CC_WorkPlane'"
          },
          "computed": true
        },
        "right": {
          "type": "Identifier",
          "start": 26599,
          "end": 26608,
          "loc": {
            "start": {
              "line": 668,
              "column": 46
            },
            "end": {
              "line": 668,
              "column": 55
            }
          },
          "name": "WorkPlane"
        }
      },
      "trailingComments": [
        {
          "type": "CommentLine",
          "value": "==============================    Color set     ==============================",
          "start": 26613,
          "end": 26693,
          "loc": {
            "start": {
              "line": 670,
              "column": 0
            },
            "end": {
              "line": 670,
              "column": 80
            }
          },
          "range": [
            26613,
            26693
          ]
        }
      ]
    },
    {
      "type": "ExportNamedDeclaration",
      "start": 26695,
      "end": 28194,
      "loc": {
        "start": {
          "line": 671,
          "column": 0
        },
        "end": {
          "line": 704,
          "column": 1
        }
      },
      "declaration": {
        "type": "FunctionDeclaration",
        "start": 26702,
        "end": 28194,
        "loc": {
          "start": {
            "line": 671,
            "column": 7
          },
          "end": {
            "line": 704,
            "column": 1
          }
        },
        "id": {
          "type": "Identifier",
          "start": 26711,
          "end": 26719,
          "loc": {
            "start": {
              "line": 671,
              "column": 16
            },
            "end": {
              "line": 671,
              "column": 24
            }
          },
          "name": "getColor",
          "leadingComments": null
        },
        "generator": false,
        "expression": false,
        "async": false,
        "params": [
          {
            "type": "Identifier",
            "start": 26720,
            "end": 26726,
            "loc": {
              "start": {
                "line": 671,
                "column": 25
              },
              "end": {
                "line": 671,
                "column": 31
              }
            },
            "name": "object"
          },
          {
            "type": "Identifier",
            "start": 26728,
            "end": 26741,
            "loc": {
              "start": {
                "line": 671,
                "column": 33
              },
              "end": {
                "line": 671,
                "column": 46
              }
            },
            "name": "isHighlighted"
          }
        ],
        "body": {
          "type": "BlockStatement",
          "start": 26743,
          "end": 28194,
          "loc": {
            "start": {
              "line": 671,
              "column": 48
            },
            "end": {
              "line": 704,
              "column": 1
            }
          },
          "body": [
            {
              "type": "VariableDeclaration",
              "start": 26750,
              "end": 26781,
              "loc": {
                "start": {
                  "line": 672,
                  "column": 4
                },
                "end": {
                  "line": 672,
                  "column": 35
                }
              },
              "declarations": [
                {
                  "type": "VariableDeclarator",
                  "start": 26754,
                  "end": 26780,
                  "loc": {
                    "start": {
                      "line": 672,
                      "column": 8
                    },
                    "end": {
                      "line": 672,
                      "column": 34
                    }
                  },
                  "id": {
                    "type": "Identifier",
                    "start": 26754,
                    "end": 26769,
                    "loc": {
                      "start": {
                        "line": 672,
                        "column": 8
                      },
                      "end": {
                        "line": 672,
                        "column": 23
                      }
                    },
                    "name": "pointUsualColor"
                  },
                  "init": {
                    "type": "Literal",
                    "start": 26772,
                    "end": 26780,
                    "loc": {
                      "start": {
                        "line": 672,
                        "column": 26
                      },
                      "end": {
                        "line": 672,
                        "column": 34
                      }
                    },
                    "value": 10967001,
                    "rawValue": 10967001,
                    "raw": "0xa757d9"
                  }
                }
              ],
              "kind": "var"
            },
            {
              "type": "VariableDeclaration",
              "start": 26787,
              "end": 26824,
              "loc": {
                "start": {
                  "line": 673,
                  "column": 4
                },
                "end": {
                  "line": 673,
                  "column": 41
                }
              },
              "declarations": [
                {
                  "type": "VariableDeclarator",
                  "start": 26791,
                  "end": 26823,
                  "loc": {
                    "start": {
                      "line": 673,
                      "column": 8
                    },
                    "end": {
                      "line": 673,
                      "column": 40
                    }
                  },
                  "id": {
                    "type": "Identifier",
                    "start": 26791,
                    "end": 26812,
                    "loc": {
                      "start": {
                        "line": 673,
                        "column": 8
                      },
                      "end": {
                        "line": 673,
                        "column": 29
                      }
                    },
                    "name": "pointHighlightedColor"
                  },
                  "init": {
                    "type": "Literal",
                    "start": 26815,
                    "end": 26823,
                    "loc": {
                      "start": {
                        "line": 673,
                        "column": 32
                      },
                      "end": {
                        "line": 673,
                        "column": 40
                      }
                    },
                    "value": 12611824,
                    "rawValue": 12611824,
                    "raw": "0xc070f0"
                  }
                }
              ],
              "kind": "var"
            },
            {
              "type": "VariableDeclaration",
              "start": 26830,
              "end": 26866,
              "loc": {
                "start": {
                  "line": 674,
                  "column": 4
                },
                "end": {
                  "line": 674,
                  "column": 40
                }
              },
              "declarations": [
                {
                  "type": "VariableDeclarator",
                  "start": 26834,
                  "end": 26865,
                  "loc": {
                    "start": {
                      "line": 674,
                      "column": 8
                    },
                    "end": {
                      "line": 674,
                      "column": 39
                    }
                  },
                  "id": {
                    "type": "Identifier",
                    "start": 26834,
                    "end": 26854,
                    "loc": {
                      "start": {
                        "line": 674,
                        "column": 8
                      },
                      "end": {
                        "line": 674,
                        "column": 28
                      }
                    },
                    "name": "pointUsualColorFixed"
                  },
                  "init": {
                    "type": "Literal",
                    "start": 26857,
                    "end": 26865,
                    "loc": {
                      "start": {
                        "line": 674,
                        "column": 31
                      },
                      "end": {
                        "line": 674,
                        "column": 39
                      }
                    },
                    "value": 8947848,
                    "rawValue": 8947848,
                    "raw": "0x888888"
                  }
                }
              ],
              "kind": "var"
            },
            {
              "type": "VariableDeclaration",
              "start": 26872,
              "end": 26914,
              "loc": {
                "start": {
                  "line": 675,
                  "column": 4
                },
                "end": {
                  "line": 675,
                  "column": 46
                }
              },
              "declarations": [
                {
                  "type": "VariableDeclarator",
                  "start": 26876,
                  "end": 26913,
                  "loc": {
                    "start": {
                      "line": 675,
                      "column": 8
                    },
                    "end": {
                      "line": 675,
                      "column": 45
                    }
                  },
                  "id": {
                    "type": "Identifier",
                    "start": 26876,
                    "end": 26902,
                    "loc": {
                      "start": {
                        "line": 675,
                        "column": 8
                      },
                      "end": {
                        "line": 675,
                        "column": 34
                      }
                    },
                    "name": "pointHighlightedColorFixed"
                  },
                  "init": {
                    "type": "Literal",
                    "start": 26905,
                    "end": 26913,
                    "loc": {
                      "start": {
                        "line": 675,
                        "column": 37
                      },
                      "end": {
                        "line": 675,
                        "column": 45
                      }
                    },
                    "value": 15658734,
                    "rawValue": 15658734,
                    "raw": "0xeeeeee"
                  }
                }
              ],
              "kind": "var"
            },
            {
              "type": "VariableDeclaration",
              "start": 26920,
              "end": 27029,
              "loc": {
                "start": {
                  "line": 676,
                  "column": 4
                },
                "end": {
                  "line": 676,
                  "column": 113
                }
              },
              "declarations": [
                {
                  "type": "VariableDeclarator",
                  "start": 26924,
                  "end": 27028,
                  "loc": {
                    "start": {
                      "line": 676,
                      "column": 8
                    },
                    "end": {
                      "line": 676,
                      "column": 112
                    }
                  },
                  "id": {
                    "type": "Identifier",
                    "start": 26924,
                    "end": 26935,
                    "loc": {
                      "start": {
                        "line": 676,
                        "column": 8
                      },
                      "end": {
                        "line": 676,
                        "column": 19
                      }
                    },
                    "name": "pointColors"
                  },
                  "init": {
                    "type": "ArrayExpression",
                    "start": 26938,
                    "end": 27028,
                    "loc": {
                      "start": {
                        "line": 676,
                        "column": 22
                      },
                      "end": {
                        "line": 676,
                        "column": 112
                      }
                    },
                    "elements": [
                      {
                        "type": "Identifier",
                        "start": 26939,
                        "end": 26954,
                        "loc": {
                          "start": {
                            "line": 676,
                            "column": 23
                          },
                          "end": {
                            "line": 676,
                            "column": 38
                          }
                        },
                        "name": "pointUsualColor"
                      },
                      {
                        "type": "Identifier",
                        "start": 26956,
                        "end": 26977,
                        "loc": {
                          "start": {
                            "line": 676,
                            "column": 40
                          },
                          "end": {
                            "line": 676,
                            "column": 61
                          }
                        },
                        "name": "pointHighlightedColor"
                      },
                      {
                        "type": "Identifier",
                        "start": 26979,
                        "end": 26999,
                        "loc": {
                          "start": {
                            "line": 676,
                            "column": 63
                          },
                          "end": {
                            "line": 676,
                            "column": 83
                          }
                        },
                        "name": "pointUsualColorFixed"
                      },
                      {
                        "type": "Identifier",
                        "start": 27001,
                        "end": 27027,
                        "loc": {
                          "start": {
                            "line": 676,
                            "column": 85
                          },
                          "end": {
                            "line": 676,
                            "column": 111
                          }
                        },
                        "name": "pointHighlightedColorFixed"
                      }
                    ]
                  }
                }
              ],
              "kind": "var"
            },
            {
              "type": "VariableDeclaration",
              "start": 27035,
              "end": 27065,
              "loc": {
                "start": {
                  "line": 677,
                  "column": 4
                },
                "end": {
                  "line": 677,
                  "column": 34
                }
              },
              "declarations": [
                {
                  "type": "VariableDeclarator",
                  "start": 27039,
                  "end": 27064,
                  "loc": {
                    "start": {
                      "line": 677,
                      "column": 8
                    },
                    "end": {
                      "line": 677,
                      "column": 33
                    }
                  },
                  "id": {
                    "type": "Identifier",
                    "start": 27039,
                    "end": 27053,
                    "loc": {
                      "start": {
                        "line": 677,
                        "column": 8
                      },
                      "end": {
                        "line": 677,
                        "column": 22
                      }
                    },
                    "name": "lineUsualColor"
                  },
                  "init": {
                    "type": "Literal",
                    "start": 27056,
                    "end": 27064,
                    "loc": {
                      "start": {
                        "line": 677,
                        "column": 25
                      },
                      "end": {
                        "line": 677,
                        "column": 33
                      }
                    },
                    "value": 3373218,
                    "rawValue": 3373218,
                    "raw": "0x3378a2"
                  }
                }
              ],
              "kind": "var"
            },
            {
              "type": "VariableDeclaration",
              "start": 27071,
              "end": 27107,
              "loc": {
                "start": {
                  "line": 678,
                  "column": 4
                },
                "end": {
                  "line": 678,
                  "column": 40
                }
              },
              "declarations": [
                {
                  "type": "VariableDeclarator",
                  "start": 27075,
                  "end": 27106,
                  "loc": {
                    "start": {
                      "line": 678,
                      "column": 8
                    },
                    "end": {
                      "line": 678,
                      "column": 39
                    }
                  },
                  "id": {
                    "type": "Identifier",
                    "start": 27075,
                    "end": 27095,
                    "loc": {
                      "start": {
                        "line": 678,
                        "column": 8
                      },
                      "end": {
                        "line": 678,
                        "column": 28
                      }
                    },
                    "name": "lineHighlightedColor"
                  },
                  "init": {
                    "type": "Literal",
                    "start": 27098,
                    "end": 27106,
                    "loc": {
                      "start": {
                        "line": 678,
                        "column": 31
                      },
                      "end": {
                        "line": 678,
                        "column": 39
                      }
                    },
                    "value": 11194324,
                    "rawValue": 11194324,
                    "raw": "0xaacfd4"
                  }
                }
              ],
              "kind": "var"
            },
            {
              "type": "VariableDeclaration",
              "start": 27113,
              "end": 27148,
              "loc": {
                "start": {
                  "line": 679,
                  "column": 4
                },
                "end": {
                  "line": 679,
                  "column": 39
                }
              },
              "declarations": [
                {
                  "type": "VariableDeclarator",
                  "start": 27117,
                  "end": 27147,
                  "loc": {
                    "start": {
                      "line": 679,
                      "column": 8
                    },
                    "end": {
                      "line": 679,
                      "column": 38
                    }
                  },
                  "id": {
                    "type": "Identifier",
                    "start": 27117,
                    "end": 27136,
                    "loc": {
                      "start": {
                        "line": 679,
                        "column": 8
                      },
                      "end": {
                        "line": 679,
                        "column": 27
                      }
                    },
                    "name": "lineUsualColorFixed"
                  },
                  "init": {
                    "type": "Literal",
                    "start": 27139,
                    "end": 27147,
                    "loc": {
                      "start": {
                        "line": 679,
                        "column": 30
                      },
                      "end": {
                        "line": 679,
                        "column": 38
                      }
                    },
                    "value": 8947848,
                    "rawValue": 8947848,
                    "raw": "0x888888"
                  }
                }
              ],
              "kind": "var"
            },
            {
              "type": "VariableDeclaration",
              "start": 27154,
              "end": 27195,
              "loc": {
                "start": {
                  "line": 680,
                  "column": 4
                },
                "end": {
                  "line": 680,
                  "column": 45
                }
              },
              "declarations": [
                {
                  "type": "VariableDeclarator",
                  "start": 27158,
                  "end": 27194,
                  "loc": {
                    "start": {
                      "line": 680,
                      "column": 8
                    },
                    "end": {
                      "line": 680,
                      "column": 44
                    }
                  },
                  "id": {
                    "type": "Identifier",
                    "start": 27158,
                    "end": 27183,
                    "loc": {
                      "start": {
                        "line": 680,
                        "column": 8
                      },
                      "end": {
                        "line": 680,
                        "column": 33
                      }
                    },
                    "name": "lineHighlightedColorFixed"
                  },
                  "init": {
                    "type": "Literal",
                    "start": 27186,
                    "end": 27194,
                    "loc": {
                      "start": {
                        "line": 680,
                        "column": 36
                      },
                      "end": {
                        "line": 680,
                        "column": 44
                      }
                    },
                    "value": 15658734,
                    "rawValue": 15658734,
                    "raw": "0xeeeeee"
                  }
                }
              ],
              "kind": "var"
            },
            {
              "type": "VariableDeclaration",
              "start": 27201,
              "end": 27305,
              "loc": {
                "start": {
                  "line": 681,
                  "column": 4
                },
                "end": {
                  "line": 681,
                  "column": 108
                }
              },
              "declarations": [
                {
                  "type": "VariableDeclarator",
                  "start": 27205,
                  "end": 27304,
                  "loc": {
                    "start": {
                      "line": 681,
                      "column": 8
                    },
                    "end": {
                      "line": 681,
                      "column": 107
                    }
                  },
                  "id": {
                    "type": "Identifier",
                    "start": 27205,
                    "end": 27215,
                    "loc": {
                      "start": {
                        "line": 681,
                        "column": 8
                      },
                      "end": {
                        "line": 681,
                        "column": 18
                      }
                    },
                    "name": "lineColors"
                  },
                  "init": {
                    "type": "ArrayExpression",
                    "start": 27218,
                    "end": 27304,
                    "loc": {
                      "start": {
                        "line": 681,
                        "column": 21
                      },
                      "end": {
                        "line": 681,
                        "column": 107
                      }
                    },
                    "elements": [
                      {
                        "type": "Identifier",
                        "start": 27219,
                        "end": 27233,
                        "loc": {
                          "start": {
                            "line": 681,
                            "column": 22
                          },
                          "end": {
                            "line": 681,
                            "column": 36
                          }
                        },
                        "name": "lineUsualColor"
                      },
                      {
                        "type": "Identifier",
                        "start": 27235,
                        "end": 27255,
                        "loc": {
                          "start": {
                            "line": 681,
                            "column": 38
                          },
                          "end": {
                            "line": 681,
                            "column": 58
                          }
                        },
                        "name": "lineHighlightedColor"
                      },
                      {
                        "type": "Identifier",
                        "start": 27257,
                        "end": 27276,
                        "loc": {
                          "start": {
                            "line": 681,
                            "column": 60
                          },
                          "end": {
                            "line": 681,
                            "column": 79
                          }
                        },
                        "name": "lineUsualColorFixed"
                      },
                      {
                        "type": "Identifier",
                        "start": 27278,
                        "end": 27303,
                        "loc": {
                          "start": {
                            "line": 681,
                            "column": 81
                          },
                          "end": {
                            "line": 681,
                            "column": 106
                          }
                        },
                        "name": "lineHighlightedColorFixed"
                      }
                    ]
                  }
                }
              ],
              "kind": "var"
            },
            {
              "type": "VariableDeclaration",
              "start": 27311,
              "end": 27340,
              "loc": {
                "start": {
                  "line": 682,
                  "column": 4
                },
                "end": {
                  "line": 682,
                  "column": 33
                }
              },
              "declarations": [
                {
                  "type": "VariableDeclarator",
                  "start": 27315,
                  "end": 27339,
                  "loc": {
                    "start": {
                      "line": 682,
                      "column": 8
                    },
                    "end": {
                      "line": 682,
                      "column": 32
                    }
                  },
                  "id": {
                    "type": "Identifier",
                    "start": 27315,
                    "end": 27328,
                    "loc": {
                      "start": {
                        "line": 682,
                        "column": 8
                      },
                      "end": {
                        "line": 682,
                        "column": 21
                      }
                    },
                    "name": "arcUsualColor"
                  },
                  "init": {
                    "type": "Literal",
                    "start": 27331,
                    "end": 27339,
                    "loc": {
                      "start": {
                        "line": 682,
                        "column": 24
                      },
                      "end": {
                        "line": 682,
                        "column": 32
                      }
                    },
                    "value": 12731257,
                    "rawValue": 12731257,
                    "raw": "0xc24379"
                  }
                }
              ],
              "kind": "var"
            },
            {
              "type": "VariableDeclaration",
              "start": 27346,
              "end": 27381,
              "loc": {
                "start": {
                  "line": 683,
                  "column": 4
                },
                "end": {
                  "line": 683,
                  "column": 39
                }
              },
              "declarations": [
                {
                  "type": "VariableDeclarator",
                  "start": 27350,
                  "end": 27380,
                  "loc": {
                    "start": {
                      "line": 683,
                      "column": 8
                    },
                    "end": {
                      "line": 683,
                      "column": 38
                    }
                  },
                  "id": {
                    "type": "Identifier",
                    "start": 27350,
                    "end": 27369,
                    "loc": {
                      "start": {
                        "line": 683,
                        "column": 8
                      },
                      "end": {
                        "line": 683,
                        "column": 27
                      }
                    },
                    "name": "arcHighlightedColor"
                  },
                  "init": {
                    "type": "Literal",
                    "start": 27372,
                    "end": 27380,
                    "loc": {
                      "start": {
                        "line": 683,
                        "column": 30
                      },
                      "end": {
                        "line": 683,
                        "column": 38
                      }
                    },
                    "value": 15226024,
                    "rawValue": 15226024,
                    "raw": "0xe854a8"
                  }
                }
              ],
              "kind": "var"
            },
            {
              "type": "VariableDeclaration",
              "start": 27387,
              "end": 27421,
              "loc": {
                "start": {
                  "line": 684,
                  "column": 4
                },
                "end": {
                  "line": 684,
                  "column": 38
                }
              },
              "declarations": [
                {
                  "type": "VariableDeclarator",
                  "start": 27391,
                  "end": 27420,
                  "loc": {
                    "start": {
                      "line": 684,
                      "column": 8
                    },
                    "end": {
                      "line": 684,
                      "column": 37
                    }
                  },
                  "id": {
                    "type": "Identifier",
                    "start": 27391,
                    "end": 27409,
                    "loc": {
                      "start": {
                        "line": 684,
                        "column": 8
                      },
                      "end": {
                        "line": 684,
                        "column": 26
                      }
                    },
                    "name": "arcUsualColorFixed"
                  },
                  "init": {
                    "type": "Literal",
                    "start": 27412,
                    "end": 27420,
                    "loc": {
                      "start": {
                        "line": 684,
                        "column": 29
                      },
                      "end": {
                        "line": 684,
                        "column": 37
                      }
                    },
                    "value": 8947848,
                    "rawValue": 8947848,
                    "raw": "0x888888"
                  }
                }
              ],
              "kind": "var"
            },
            {
              "type": "VariableDeclaration",
              "start": 27427,
              "end": 27467,
              "loc": {
                "start": {
                  "line": 685,
                  "column": 4
                },
                "end": {
                  "line": 685,
                  "column": 44
                }
              },
              "declarations": [
                {
                  "type": "VariableDeclarator",
                  "start": 27431,
                  "end": 27466,
                  "loc": {
                    "start": {
                      "line": 685,
                      "column": 8
                    },
                    "end": {
                      "line": 685,
                      "column": 43
                    }
                  },
                  "id": {
                    "type": "Identifier",
                    "start": 27431,
                    "end": 27455,
                    "loc": {
                      "start": {
                        "line": 685,
                        "column": 8
                      },
                      "end": {
                        "line": 685,
                        "column": 32
                      }
                    },
                    "name": "arcHighlightedColorFixed"
                  },
                  "init": {
                    "type": "Literal",
                    "start": 27458,
                    "end": 27466,
                    "loc": {
                      "start": {
                        "line": 685,
                        "column": 35
                      },
                      "end": {
                        "line": 685,
                        "column": 43
                      }
                    },
                    "value": 15658734,
                    "rawValue": 15658734,
                    "raw": "0xeeeeee"
                  }
                }
              ],
              "kind": "var"
            },
            {
              "type": "VariableDeclaration",
              "start": 27473,
              "end": 27572,
              "loc": {
                "start": {
                  "line": 686,
                  "column": 4
                },
                "end": {
                  "line": 686,
                  "column": 103
                }
              },
              "declarations": [
                {
                  "type": "VariableDeclarator",
                  "start": 27477,
                  "end": 27571,
                  "loc": {
                    "start": {
                      "line": 686,
                      "column": 8
                    },
                    "end": {
                      "line": 686,
                      "column": 102
                    }
                  },
                  "id": {
                    "type": "Identifier",
                    "start": 27477,
                    "end": 27486,
                    "loc": {
                      "start": {
                        "line": 686,
                        "column": 8
                      },
                      "end": {
                        "line": 686,
                        "column": 17
                      }
                    },
                    "name": "arcColors"
                  },
                  "init": {
                    "type": "ArrayExpression",
                    "start": 27489,
                    "end": 27571,
                    "loc": {
                      "start": {
                        "line": 686,
                        "column": 20
                      },
                      "end": {
                        "line": 686,
                        "column": 102
                      }
                    },
                    "elements": [
                      {
                        "type": "Identifier",
                        "start": 27490,
                        "end": 27503,
                        "loc": {
                          "start": {
                            "line": 686,
                            "column": 21
                          },
                          "end": {
                            "line": 686,
                            "column": 34
                          }
                        },
                        "name": "arcUsualColor"
                      },
                      {
                        "type": "Identifier",
                        "start": 27505,
                        "end": 27524,
                        "loc": {
                          "start": {
                            "line": 686,
                            "column": 36
                          },
                          "end": {
                            "line": 686,
                            "column": 55
                          }
                        },
                        "name": "arcHighlightedColor"
                      },
                      {
                        "type": "Identifier",
                        "start": 27526,
                        "end": 27544,
                        "loc": {
                          "start": {
                            "line": 686,
                            "column": 57
                          },
                          "end": {
                            "line": 686,
                            "column": 75
                          }
                        },
                        "name": "arcUsualColorFixed"
                      },
                      {
                        "type": "Identifier",
                        "start": 27546,
                        "end": 27570,
                        "loc": {
                          "start": {
                            "line": 686,
                            "column": 77
                          },
                          "end": {
                            "line": 686,
                            "column": 101
                          }
                        },
                        "name": "arcHighlightedColorFixed"
                      }
                    ]
                  }
                }
              ],
              "kind": "var"
            },
            {
              "type": "VariableDeclaration",
              "start": 27578,
              "end": 27604,
              "loc": {
                "start": {
                  "line": 687,
                  "column": 4
                },
                "end": {
                  "line": 687,
                  "column": 30
                }
              },
              "declarations": [
                {
                  "type": "VariableDeclarator",
                  "start": 27582,
                  "end": 27603,
                  "loc": {
                    "start": {
                      "line": 687,
                      "column": 8
                    },
                    "end": {
                      "line": 687,
                      "column": 29
                    }
                  },
                  "id": {
                    "type": "Identifier",
                    "start": 27582,
                    "end": 27592,
                    "loc": {
                      "start": {
                        "line": 687,
                        "column": 8
                      },
                      "end": {
                        "line": 687,
                        "column": 18
                      }
                    },
                    "name": "planeColor"
                  },
                  "init": {
                    "type": "Literal",
                    "start": 27595,
                    "end": 27603,
                    "loc": {
                      "start": {
                        "line": 687,
                        "column": 21
                      },
                      "end": {
                        "line": 687,
                        "column": 29
                      }
                    },
                    "value": 8355711,
                    "rawValue": 8355711,
                    "raw": "0x7f7f7f"
                  }
                }
              ],
              "kind": "var"
            },
            {
              "type": "VariableDeclaration",
              "start": 27612,
              "end": 27653,
              "loc": {
                "start": {
                  "line": 689,
                  "column": 4
                },
                "end": {
                  "line": 689,
                  "column": 45
                }
              },
              "declarations": [
                {
                  "type": "VariableDeclarator",
                  "start": 27616,
                  "end": 27652,
                  "loc": {
                    "start": {
                      "line": 689,
                      "column": 8
                    },
                    "end": {
                      "line": 689,
                      "column": 44
                    }
                  },
                  "id": {
                    "type": "Identifier",
                    "start": 27616,
                    "end": 27622,
                    "loc": {
                      "start": {
                        "line": 689,
                        "column": 8
                      },
                      "end": {
                        "line": 689,
                        "column": 14
                      }
                    },
                    "name": "sketch"
                  },
                  "init": {
                    "type": "CallExpression",
                    "start": 27625,
                    "end": 27652,
                    "loc": {
                      "start": {
                        "line": 689,
                        "column": 17
                      },
                      "end": {
                        "line": 689,
                        "column": 44
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 27625,
                      "end": 27644,
                      "loc": {
                        "start": {
                          "line": 689,
                          "column": 17
                        },
                        "end": {
                          "line": 689,
                          "column": 36
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 27625,
                        "end": 27631,
                        "loc": {
                          "start": {
                            "line": 689,
                            "column": 17
                          },
                          "end": {
                            "line": 689,
                            "column": 23
                          }
                        },
                        "name": "Sketch"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 27632,
                        "end": 27644,
                        "loc": {
                          "start": {
                            "line": 689,
                            "column": 24
                          },
                          "end": {
                            "line": 689,
                            "column": 36
                          }
                        },
                        "name": "FindSketchOf"
                      },
                      "computed": false
                    },
                    "arguments": [
                      {
                        "type": "Identifier",
                        "start": 27645,
                        "end": 27651,
                        "loc": {
                          "start": {
                            "line": 689,
                            "column": 37
                          },
                          "end": {
                            "line": 689,
                            "column": 43
                          }
                        },
                        "name": "object"
                      }
                    ]
                  }
                }
              ],
              "kind": "var"
            },
            {
              "type": "VariableDeclaration",
              "start": 27659,
              "end": 27770,
              "loc": {
                "start": {
                  "line": 690,
                  "column": 4
                },
                "end": {
                  "line": 690,
                  "column": 115
                }
              },
              "declarations": [
                {
                  "type": "VariableDeclarator",
                  "start": 27663,
                  "end": 27769,
                  "loc": {
                    "start": {
                      "line": 690,
                      "column": 8
                    },
                    "end": {
                      "line": 690,
                      "column": 114
                    }
                  },
                  "id": {
                    "type": "Identifier",
                    "start": 27663,
                    "end": 27670,
                    "loc": {
                      "start": {
                        "line": 690,
                        "column": 8
                      },
                      "end": {
                        "line": 690,
                        "column": 15
                      }
                    },
                    "name": "isFixed"
                  },
                  "init": {
                    "type": "ConditionalExpression",
                    "start": 27673,
                    "end": 27769,
                    "loc": {
                      "start": {
                        "line": 690,
                        "column": 18
                      },
                      "end": {
                        "line": 690,
                        "column": 114
                      }
                    },
                    "test": {
                      "type": "Identifier",
                      "start": 27673,
                      "end": 27679,
                      "loc": {
                        "start": {
                          "line": 690,
                          "column": 18
                        },
                        "end": {
                          "line": 690,
                          "column": 24
                        }
                      },
                      "name": "sketch"
                    },
                    "consequent": {
                      "type": "CallExpression",
                      "start": 27682,
                      "end": 27762,
                      "loc": {
                        "start": {
                          "line": 690,
                          "column": 27
                        },
                        "end": {
                          "line": 690,
                          "column": 107
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 27682,
                        "end": 27724,
                        "loc": {
                          "start": {
                            "line": 690,
                            "column": 27
                          },
                          "end": {
                            "line": 690,
                            "column": 69
                          }
                        },
                        "object": {
                          "type": "CallExpression",
                          "start": 27682,
                          "end": 27719,
                          "loc": {
                            "start": {
                              "line": 690,
                              "column": 27
                            },
                            "end": {
                              "line": 690,
                              "column": 64
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 27682,
                            "end": 27711,
                            "loc": {
                              "start": {
                                "line": 690,
                                "column": 27
                              },
                              "end": {
                                "line": 690,
                                "column": 56
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 27682,
                              "end": 27688,
                              "loc": {
                                "start": {
                                  "line": 690,
                                  "column": 27
                                },
                                "end": {
                                  "line": 690,
                                  "column": 33
                                }
                              },
                              "name": "sketch"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 27689,
                              "end": 27711,
                              "loc": {
                                "start": {
                                  "line": 690,
                                  "column": 34
                                },
                                "end": {
                                  "line": 690,
                                  "column": 56
                                }
                              },
                              "name": "getConstraintsOnSketch"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 27712,
                              "end": 27718,
                              "loc": {
                                "start": {
                                  "line": 690,
                                  "column": 57
                                },
                                "end": {
                                  "line": 690,
                                  "column": 63
                                }
                              },
                              "name": "object"
                            }
                          ]
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 27720,
                          "end": 27724,
                          "loc": {
                            "start": {
                              "line": 690,
                              "column": 65
                            },
                            "end": {
                              "line": 690,
                              "column": 69
                            }
                          },
                          "name": "some"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "ArrowFunctionExpression",
                          "start": 27725,
                          "end": 27761,
                          "loc": {
                            "start": {
                              "line": 690,
                              "column": 70
                            },
                            "end": {
                              "line": 690,
                              "column": 106
                            }
                          },
                          "id": null,
                          "generator": false,
                          "expression": true,
                          "async": false,
                          "params": [
                            {
                              "type": "Identifier",
                              "start": 27725,
                              "end": 27731,
                              "loc": {
                                "start": {
                                  "line": 690,
                                  "column": 70
                                },
                                "end": {
                                  "line": 690,
                                  "column": 76
                                }
                              },
                              "name": "constr"
                            }
                          ],
                          "body": {
                            "type": "BinaryExpression",
                            "start": 27735,
                            "end": 27761,
                            "loc": {
                              "start": {
                                "line": 690,
                                "column": 80
                              },
                              "end": {
                                "line": 690,
                                "column": 106
                              }
                            },
                            "left": {
                              "type": "MemberExpression",
                              "start": 27735,
                              "end": 27746,
                              "loc": {
                                "start": {
                                  "line": 690,
                                  "column": 80
                                },
                                "end": {
                                  "line": 690,
                                  "column": 91
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 27735,
                                "end": 27741,
                                "loc": {
                                  "start": {
                                    "line": 690,
                                    "column": 80
                                  },
                                  "end": {
                                    "line": 690,
                                    "column": 86
                                  }
                                },
                                "name": "constr"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 27742,
                                "end": 27746,
                                "loc": {
                                  "start": {
                                    "line": 690,
                                    "column": 87
                                  },
                                  "end": {
                                    "line": 690,
                                    "column": 91
                                  }
                                },
                                "name": "name"
                              },
                              "computed": false
                            },
                            "operator": "===",
                            "right": {
                              "type": "Literal",
                              "start": 27751,
                              "end": 27761,
                              "loc": {
                                "start": {
                                  "line": 690,
                                  "column": 96
                                },
                                "end": {
                                  "line": 690,
                                  "column": 106
                                }
                              },
                              "value": "FIXATION",
                              "rawValue": "FIXATION",
                              "raw": "\"FIXATION\""
                            }
                          }
                        }
                      ]
                    },
                    "alternate": {
                      "type": "Literal",
                      "start": 27764,
                      "end": 27769,
                      "loc": {
                        "start": {
                          "line": 690,
                          "column": 109
                        },
                        "end": {
                          "line": 690,
                          "column": 114
                        }
                      },
                      "value": false,
                      "rawValue": false,
                      "raw": "false"
                    }
                  }
                }
              ],
              "kind": "var"
            },
            {
              "type": "VariableDeclaration",
              "start": 27776,
              "end": 27832,
              "loc": {
                "start": {
                  "line": 691,
                  "column": 4
                },
                "end": {
                  "line": 691,
                  "column": 60
                }
              },
              "declarations": [
                {
                  "type": "VariableDeclarator",
                  "start": 27780,
                  "end": 27831,
                  "loc": {
                    "start": {
                      "line": 691,
                      "column": 8
                    },
                    "end": {
                      "line": 691,
                      "column": 59
                    }
                  },
                  "id": {
                    "type": "Identifier",
                    "start": 27780,
                    "end": 27785,
                    "loc": {
                      "start": {
                        "line": 691,
                        "column": 8
                      },
                      "end": {
                        "line": 691,
                        "column": 13
                      }
                    },
                    "name": "index"
                  },
                  "init": {
                    "type": "BinaryExpression",
                    "start": 27788,
                    "end": 27831,
                    "loc": {
                      "start": {
                        "line": 691,
                        "column": 16
                      },
                      "end": {
                        "line": 691,
                        "column": 59
                      }
                    },
                    "left": {
                      "type": "ConditionalExpression",
                      "start": 27789,
                      "end": 27804,
                      "loc": {
                        "start": {
                          "line": 691,
                          "column": 17
                        },
                        "end": {
                          "line": 691,
                          "column": 32
                        }
                      },
                      "test": {
                        "type": "Identifier",
                        "start": 27789,
                        "end": 27796,
                        "loc": {
                          "start": {
                            "line": 691,
                            "column": 17
                          },
                          "end": {
                            "line": 691,
                            "column": 24
                          }
                        },
                        "name": "isFixed"
                      },
                      "consequent": {
                        "type": "Literal",
                        "start": 27799,
                        "end": 27800,
                        "loc": {
                          "start": {
                            "line": 691,
                            "column": 27
                          },
                          "end": {
                            "line": 691,
                            "column": 28
                          }
                        },
                        "value": 2,
                        "rawValue": 2,
                        "raw": "2"
                      },
                      "alternate": {
                        "type": "Literal",
                        "start": 27803,
                        "end": 27804,
                        "loc": {
                          "start": {
                            "line": 691,
                            "column": 31
                          },
                          "end": {
                            "line": 691,
                            "column": 32
                          }
                        },
                        "value": 0,
                        "rawValue": 0,
                        "raw": "0"
                      },
                      "parenthesizedExpression": true
                    },
                    "operator": "+",
                    "right": {
                      "type": "ConditionalExpression",
                      "start": 27809,
                      "end": 27830,
                      "loc": {
                        "start": {
                          "line": 691,
                          "column": 37
                        },
                        "end": {
                          "line": 691,
                          "column": 58
                        }
                      },
                      "test": {
                        "type": "Identifier",
                        "start": 27809,
                        "end": 27822,
                        "loc": {
                          "start": {
                            "line": 691,
                            "column": 37
                          },
                          "end": {
                            "line": 691,
                            "column": 50
                          }
                        },
                        "name": "isHighlighted"
                      },
                      "consequent": {
                        "type": "Literal",
                        "start": 27825,
                        "end": 27826,
                        "loc": {
                          "start": {
                            "line": 691,
                            "column": 53
                          },
                          "end": {
                            "line": 691,
                            "column": 54
                          }
                        },
                        "value": 1,
                        "rawValue": 1,
                        "raw": "1"
                      },
                      "alternate": {
                        "type": "Literal",
                        "start": 27829,
                        "end": 27830,
                        "loc": {
                          "start": {
                            "line": 691,
                            "column": 57
                          },
                          "end": {
                            "line": 691,
                            "column": 58
                          }
                        },
                        "value": 0,
                        "rawValue": 0,
                        "raw": "0"
                      },
                      "parenthesizedExpression": true
                    }
                  }
                }
              ],
              "kind": "var"
            },
            {
              "type": "VariableDeclaration",
              "start": 27838,
              "end": 27860,
              "loc": {
                "start": {
                  "line": 692,
                  "column": 4
                },
                "end": {
                  "line": 692,
                  "column": 26
                }
              },
              "declarations": [
                {
                  "type": "VariableDeclarator",
                  "start": 27842,
                  "end": 27859,
                  "loc": {
                    "start": {
                      "line": 692,
                      "column": 8
                    },
                    "end": {
                      "line": 692,
                      "column": 25
                    }
                  },
                  "id": {
                    "type": "Identifier",
                    "start": 27842,
                    "end": 27847,
                    "loc": {
                      "start": {
                        "line": 692,
                        "column": 8
                      },
                      "end": {
                        "line": 692,
                        "column": 13
                      }
                    },
                    "name": "color"
                  },
                  "init": {
                    "type": "Identifier",
                    "start": 27850,
                    "end": 27859,
                    "loc": {
                      "start": {
                        "line": 692,
                        "column": 16
                      },
                      "end": {
                        "line": 692,
                        "column": 25
                      }
                    },
                    "name": "undefined"
                  }
                }
              ],
              "kind": "var"
            },
            {
              "type": "IfStatement",
              "start": 27868,
              "end": 28172,
              "loc": {
                "start": {
                  "line": 694,
                  "column": 4
                },
                "end": {
                  "line": 702,
                  "column": 5
                }
              },
              "test": {
                "type": "BinaryExpression",
                "start": 27872,
                "end": 27895,
                "loc": {
                  "start": {
                    "line": 694,
                    "column": 8
                  },
                  "end": {
                    "line": 694,
                    "column": 31
                  }
                },
                "left": {
                  "type": "Identifier",
                  "start": 27872,
                  "end": 27878,
                  "loc": {
                    "start": {
                      "line": 694,
                      "column": 8
                    },
                    "end": {
                      "line": 694,
                      "column": 14
                    }
                  },
                  "name": "object"
                },
                "operator": "instanceof",
                "right": {
                  "type": "Identifier",
                  "start": 27890,
                  "end": 27895,
                  "loc": {
                    "start": {
                      "line": 694,
                      "column": 26
                    },
                    "end": {
                      "line": 694,
                      "column": 31
                    }
                  },
                  "name": "Point"
                }
              },
              "consequent": {
                "type": "BlockStatement",
                "start": 27897,
                "end": 27942,
                "loc": {
                  "start": {
                    "line": 694,
                    "column": 33
                  },
                  "end": {
                    "line": 696,
                    "column": 5
                  }
                },
                "body": [
                  {
                    "type": "ExpressionStatement",
                    "start": 27908,
                    "end": 27935,
                    "loc": {
                      "start": {
                        "line": 695,
                        "column": 8
                      },
                      "end": {
                        "line": 695,
                        "column": 35
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 27908,
                      "end": 27934,
                      "loc": {
                        "start": {
                          "line": 695,
                          "column": 8
                        },
                        "end": {
                          "line": 695,
                          "column": 34
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "Identifier",
                        "start": 27908,
                        "end": 27913,
                        "loc": {
                          "start": {
                            "line": 695,
                            "column": 8
                          },
                          "end": {
                            "line": 695,
                            "column": 13
                          }
                        },
                        "name": "color"
                      },
                      "right": {
                        "type": "MemberExpression",
                        "start": 27916,
                        "end": 27934,
                        "loc": {
                          "start": {
                            "line": 695,
                            "column": 16
                          },
                          "end": {
                            "line": 695,
                            "column": 34
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 27916,
                          "end": 27927,
                          "loc": {
                            "start": {
                              "line": 695,
                              "column": 16
                            },
                            "end": {
                              "line": 695,
                              "column": 27
                            }
                          },
                          "name": "pointColors"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 27928,
                          "end": 27933,
                          "loc": {
                            "start": {
                              "line": 695,
                              "column": 28
                            },
                            "end": {
                              "line": 695,
                              "column": 33
                            }
                          },
                          "name": "index"
                        },
                        "computed": true
                      }
                    }
                  }
                ]
              },
              "alternate": {
                "type": "IfStatement",
                "start": 27948,
                "end": 28172,
                "loc": {
                  "start": {
                    "line": 696,
                    "column": 11
                  },
                  "end": {
                    "line": 702,
                    "column": 5
                  }
                },
                "test": {
                  "type": "BinaryExpression",
                  "start": 27952,
                  "end": 27974,
                  "loc": {
                    "start": {
                      "line": 696,
                      "column": 15
                    },
                    "end": {
                      "line": 696,
                      "column": 37
                    }
                  },
                  "left": {
                    "type": "Identifier",
                    "start": 27952,
                    "end": 27958,
                    "loc": {
                      "start": {
                        "line": 696,
                        "column": 15
                      },
                      "end": {
                        "line": 696,
                        "column": 21
                      }
                    },
                    "name": "object"
                  },
                  "operator": "instanceof",
                  "right": {
                    "type": "Identifier",
                    "start": 27970,
                    "end": 27974,
                    "loc": {
                      "start": {
                        "line": 696,
                        "column": 33
                      },
                      "end": {
                        "line": 696,
                        "column": 37
                      }
                    },
                    "name": "Line"
                  }
                },
                "consequent": {
                  "type": "BlockStatement",
                  "start": 27976,
                  "end": 28020,
                  "loc": {
                    "start": {
                      "line": 696,
                      "column": 39
                    },
                    "end": {
                      "line": 698,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 27987,
                      "end": 28013,
                      "loc": {
                        "start": {
                          "line": 697,
                          "column": 8
                        },
                        "end": {
                          "line": 697,
                          "column": 34
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 27987,
                        "end": 28012,
                        "loc": {
                          "start": {
                            "line": 697,
                            "column": 8
                          },
                          "end": {
                            "line": 697,
                            "column": 33
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 27987,
                          "end": 27992,
                          "loc": {
                            "start": {
                              "line": 697,
                              "column": 8
                            },
                            "end": {
                              "line": 697,
                              "column": 13
                            }
                          },
                          "name": "color"
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 27995,
                          "end": 28012,
                          "loc": {
                            "start": {
                              "line": 697,
                              "column": 16
                            },
                            "end": {
                              "line": 697,
                              "column": 33
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 27995,
                            "end": 28005,
                            "loc": {
                              "start": {
                                "line": 697,
                                "column": 16
                              },
                              "end": {
                                "line": 697,
                                "column": 26
                              }
                            },
                            "name": "lineColors"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 28006,
                            "end": 28011,
                            "loc": {
                              "start": {
                                "line": 697,
                                "column": 27
                              },
                              "end": {
                                "line": 697,
                                "column": 32
                              }
                            },
                            "name": "index"
                          },
                          "computed": true
                        }
                      }
                    }
                  ]
                },
                "alternate": {
                  "type": "IfStatement",
                  "start": 28026,
                  "end": 28172,
                  "loc": {
                    "start": {
                      "line": 698,
                      "column": 11
                    },
                    "end": {
                      "line": 702,
                      "column": 5
                    }
                  },
                  "test": {
                    "type": "BinaryExpression",
                    "start": 28030,
                    "end": 28051,
                    "loc": {
                      "start": {
                        "line": 698,
                        "column": 15
                      },
                      "end": {
                        "line": 698,
                        "column": 36
                      }
                    },
                    "left": {
                      "type": "Identifier",
                      "start": 28030,
                      "end": 28036,
                      "loc": {
                        "start": {
                          "line": 698,
                          "column": 15
                        },
                        "end": {
                          "line": 698,
                          "column": 21
                        }
                      },
                      "name": "object"
                    },
                    "operator": "instanceof",
                    "right": {
                      "type": "Identifier",
                      "start": 28048,
                      "end": 28051,
                      "loc": {
                        "start": {
                          "line": 698,
                          "column": 33
                        },
                        "end": {
                          "line": 698,
                          "column": 36
                        }
                      },
                      "name": "Arc"
                    }
                  },
                  "consequent": {
                    "type": "BlockStatement",
                    "start": 28053,
                    "end": 28096,
                    "loc": {
                      "start": {
                        "line": 698,
                        "column": 38
                      },
                      "end": {
                        "line": 700,
                        "column": 5
                      }
                    },
                    "body": [
                      {
                        "type": "ExpressionStatement",
                        "start": 28064,
                        "end": 28089,
                        "loc": {
                          "start": {
                            "line": 699,
                            "column": 8
                          },
                          "end": {
                            "line": 699,
                            "column": 33
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 28064,
                          "end": 28088,
                          "loc": {
                            "start": {
                              "line": 699,
                              "column": 8
                            },
                            "end": {
                              "line": 699,
                              "column": 32
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "Identifier",
                            "start": 28064,
                            "end": 28069,
                            "loc": {
                              "start": {
                                "line": 699,
                                "column": 8
                              },
                              "end": {
                                "line": 699,
                                "column": 13
                              }
                            },
                            "name": "color"
                          },
                          "right": {
                            "type": "MemberExpression",
                            "start": 28072,
                            "end": 28088,
                            "loc": {
                              "start": {
                                "line": 699,
                                "column": 16
                              },
                              "end": {
                                "line": 699,
                                "column": 32
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 28072,
                              "end": 28081,
                              "loc": {
                                "start": {
                                  "line": 699,
                                  "column": 16
                                },
                                "end": {
                                  "line": 699,
                                  "column": 25
                                }
                              },
                              "name": "arcColors"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 28082,
                              "end": 28087,
                              "loc": {
                                "start": {
                                  "line": 699,
                                  "column": 26
                                },
                                "end": {
                                  "line": 699,
                                  "column": 31
                                }
                              },
                              "name": "index"
                            },
                            "computed": true
                          }
                        }
                      }
                    ]
                  },
                  "alternate": {
                    "type": "IfStatement",
                    "start": 28102,
                    "end": 28172,
                    "loc": {
                      "start": {
                        "line": 700,
                        "column": 11
                      },
                      "end": {
                        "line": 702,
                        "column": 5
                      }
                    },
                    "test": {
                      "type": "BinaryExpression",
                      "start": 28106,
                      "end": 28133,
                      "loc": {
                        "start": {
                          "line": 700,
                          "column": 15
                        },
                        "end": {
                          "line": 700,
                          "column": 42
                        }
                      },
                      "left": {
                        "type": "Identifier",
                        "start": 28106,
                        "end": 28112,
                        "loc": {
                          "start": {
                            "line": 700,
                            "column": 15
                          },
                          "end": {
                            "line": 700,
                            "column": 21
                          }
                        },
                        "name": "object"
                      },
                      "operator": "instanceof",
                      "right": {
                        "type": "Identifier",
                        "start": 28124,
                        "end": 28133,
                        "loc": {
                          "start": {
                            "line": 700,
                            "column": 33
                          },
                          "end": {
                            "line": 700,
                            "column": 42
                          }
                        },
                        "name": "WorkPlane"
                      }
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "start": 28135,
                      "end": 28172,
                      "loc": {
                        "start": {
                          "line": 700,
                          "column": 44
                        },
                        "end": {
                          "line": 702,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "ExpressionStatement",
                          "start": 28146,
                          "end": 28165,
                          "loc": {
                            "start": {
                              "line": 701,
                              "column": 8
                            },
                            "end": {
                              "line": 701,
                              "column": 27
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 28146,
                            "end": 28164,
                            "loc": {
                              "start": {
                                "line": 701,
                                "column": 8
                              },
                              "end": {
                                "line": 701,
                                "column": 26
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "Identifier",
                              "start": 28146,
                              "end": 28151,
                              "loc": {
                                "start": {
                                  "line": 701,
                                  "column": 8
                                },
                                "end": {
                                  "line": 701,
                                  "column": 13
                                }
                              },
                              "name": "color"
                            },
                            "right": {
                              "type": "Identifier",
                              "start": 28154,
                              "end": 28164,
                              "loc": {
                                "start": {
                                  "line": 701,
                                  "column": 16
                                },
                                "end": {
                                  "line": 701,
                                  "column": 26
                                }
                              },
                              "name": "planeColor"
                            }
                          }
                        }
                      ]
                    },
                    "alternate": null
                  }
                }
              }
            },
            {
              "type": "ReturnStatement",
              "start": 28178,
              "end": 28191,
              "loc": {
                "start": {
                  "line": 703,
                  "column": 4
                },
                "end": {
                  "line": 703,
                  "column": 17
                }
              },
              "argument": {
                "type": "Identifier",
                "start": 28185,
                "end": 28190,
                "loc": {
                  "start": {
                    "line": 703,
                    "column": 11
                  },
                  "end": {
                    "line": 703,
                    "column": 16
                  }
                },
                "name": "color"
              }
            }
          ],
          "trailingComments": null
        },
        "leadingComments": [
          {
            "type": "CommentLine",
            "value": "==============================    Color set     ==============================",
            "start": 26613,
            "end": 26693,
            "loc": {
              "start": {
                "line": 670,
                "column": 0
              },
              "end": {
                "line": 670,
                "column": 80
              }
            },
            "range": [
              26613,
              26693
            ]
          }
        ],
        "trailingComments": [
          {
            "type": "CommentLine",
            "value": "sizes in pixels (diameter/width)",
            "start": 28198,
            "end": 28232,
            "loc": {
              "start": {
                "line": 706,
                "column": 0
              },
              "end": {
                "line": 706,
                "column": 34
              }
            },
            "range": [
              28198,
              28232
            ]
          }
        ]
      },
      "specifiers": [],
      "source": null,
      "leadingComments": [
        {
          "type": "CommentLine",
          "value": "==============================    Color set     ==============================",
          "start": 26613,
          "end": 26693,
          "loc": {
            "start": {
              "line": 670,
              "column": 0
            },
            "end": {
              "line": 670,
              "column": 80
            }
          },
          "range": [
            26613,
            26693
          ]
        }
      ],
      "trailingComments": [
        {
          "type": "CommentLine",
          "value": "sizes in pixels (diameter/width)",
          "start": 28198,
          "end": 28232,
          "loc": {
            "start": {
              "line": 706,
              "column": 0
            },
            "end": {
              "line": 706,
              "column": 34
            }
          },
          "range": [
            28198,
            28232
          ]
        }
      ]
    },
    {
      "type": "ExpressionStatement",
      "start": 28234,
      "end": 28265,
      "loc": {
        "start": {
          "line": 707,
          "column": 0
        },
        "end": {
          "line": 707,
          "column": 31
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 28234,
        "end": 28264,
        "loc": {
          "start": {
            "line": 707,
            "column": 0
          },
          "end": {
            "line": 707,
            "column": 30
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 28234,
          "end": 28259,
          "loc": {
            "start": {
              "line": 707,
              "column": 0
            },
            "end": {
              "line": 707,
              "column": 25
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 28234,
            "end": 28249,
            "loc": {
              "start": {
                "line": 707,
                "column": 0
              },
              "end": {
                "line": 707,
                "column": 15
              }
            },
            "object": {
              "type": "Identifier",
              "start": 28234,
              "end": 28239,
              "loc": {
                "start": {
                  "line": 707,
                  "column": 0
                },
                "end": {
                  "line": 707,
                  "column": 5
                }
              },
              "name": "Point",
              "leadingComments": null
            },
            "property": {
              "type": "Identifier",
              "start": 28240,
              "end": 28249,
              "loc": {
                "start": {
                  "line": 707,
                  "column": 6
                },
                "end": {
                  "line": 707,
                  "column": 15
                }
              },
              "name": "prototype"
            },
            "computed": false,
            "leadingComments": null
          },
          "property": {
            "type": "Identifier",
            "start": 28250,
            "end": 28259,
            "loc": {
              "start": {
                "line": 707,
                "column": 16
              },
              "end": {
                "line": 707,
                "column": 25
              }
            },
            "name": "thickness"
          },
          "computed": false,
          "leadingComments": null
        },
        "right": {
          "type": "Literal",
          "start": 28262,
          "end": 28264,
          "loc": {
            "start": {
              "line": 707,
              "column": 28
            },
            "end": {
              "line": 707,
              "column": 30
            }
          },
          "value": 10,
          "rawValue": 10,
          "raw": "10"
        },
        "leadingComments": null
      },
      "leadingComments": [
        {
          "type": "CommentLine",
          "value": "sizes in pixels (diameter/width)",
          "start": 28198,
          "end": 28232,
          "loc": {
            "start": {
              "line": 706,
              "column": 0
            },
            "end": {
              "line": 706,
              "column": 34
            }
          },
          "range": [
            28198,
            28232
          ]
        }
      ]
    },
    {
      "type": "ExpressionStatement",
      "start": 28267,
      "end": 28296,
      "loc": {
        "start": {
          "line": 708,
          "column": 0
        },
        "end": {
          "line": 708,
          "column": 29
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 28267,
        "end": 28295,
        "loc": {
          "start": {
            "line": 708,
            "column": 0
          },
          "end": {
            "line": 708,
            "column": 28
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 28267,
          "end": 28291,
          "loc": {
            "start": {
              "line": 708,
              "column": 0
            },
            "end": {
              "line": 708,
              "column": 24
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 28267,
            "end": 28281,
            "loc": {
              "start": {
                "line": 708,
                "column": 0
              },
              "end": {
                "line": 708,
                "column": 14
              }
            },
            "object": {
              "type": "Identifier",
              "start": 28267,
              "end": 28271,
              "loc": {
                "start": {
                  "line": 708,
                  "column": 0
                },
                "end": {
                  "line": 708,
                  "column": 4
                }
              },
              "name": "Line"
            },
            "property": {
              "type": "Identifier",
              "start": 28272,
              "end": 28281,
              "loc": {
                "start": {
                  "line": 708,
                  "column": 5
                },
                "end": {
                  "line": 708,
                  "column": 14
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 28282,
            "end": 28291,
            "loc": {
              "start": {
                "line": 708,
                "column": 15
              },
              "end": {
                "line": 708,
                "column": 24
              }
            },
            "name": "thickness"
          },
          "computed": false
        },
        "right": {
          "type": "Literal",
          "start": 28294,
          "end": 28295,
          "loc": {
            "start": {
              "line": 708,
              "column": 27
            },
            "end": {
              "line": 708,
              "column": 28
            }
          },
          "value": 5,
          "rawValue": 5,
          "raw": "5"
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 28298,
      "end": 28326,
      "loc": {
        "start": {
          "line": 709,
          "column": 0
        },
        "end": {
          "line": 709,
          "column": 28
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 28298,
        "end": 28325,
        "loc": {
          "start": {
            "line": 709,
            "column": 0
          },
          "end": {
            "line": 709,
            "column": 27
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 28298,
          "end": 28321,
          "loc": {
            "start": {
              "line": 709,
              "column": 0
            },
            "end": {
              "line": 709,
              "column": 23
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 28298,
            "end": 28311,
            "loc": {
              "start": {
                "line": 709,
                "column": 0
              },
              "end": {
                "line": 709,
                "column": 13
              }
            },
            "object": {
              "type": "Identifier",
              "start": 28298,
              "end": 28301,
              "loc": {
                "start": {
                  "line": 709,
                  "column": 0
                },
                "end": {
                  "line": 709,
                  "column": 3
                }
              },
              "name": "Arc"
            },
            "property": {
              "type": "Identifier",
              "start": 28302,
              "end": 28311,
              "loc": {
                "start": {
                  "line": 709,
                  "column": 4
                },
                "end": {
                  "line": 709,
                  "column": 13
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 28312,
            "end": 28321,
            "loc": {
              "start": {
                "line": 709,
                "column": 14
              },
              "end": {
                "line": 709,
                "column": 23
              }
            },
            "name": "thickness"
          },
          "computed": false
        },
        "right": {
          "type": "Literal",
          "start": 28324,
          "end": 28325,
          "loc": {
            "start": {
              "line": 709,
              "column": 26
            },
            "end": {
              "line": 709,
              "column": 27
            }
          },
          "value": 5,
          "rawValue": 5,
          "raw": "5"
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 28328,
      "end": 28368,
      "loc": {
        "start": {
          "line": 710,
          "column": 0
        },
        "end": {
          "line": 710,
          "column": 40
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 28328,
        "end": 28367,
        "loc": {
          "start": {
            "line": 710,
            "column": 0
          },
          "end": {
            "line": 710,
            "column": 39
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 28328,
          "end": 28346,
          "loc": {
            "start": {
              "line": 710,
              "column": 0
            },
            "end": {
              "line": 710,
              "column": 18
            }
          },
          "object": {
            "type": "Identifier",
            "start": 28328,
            "end": 28333,
            "loc": {
              "start": {
                "line": 710,
                "column": 0
              },
              "end": {
                "line": 710,
                "column": 5
              }
            },
            "name": "Point"
          },
          "property": {
            "type": "Identifier",
            "start": 28334,
            "end": 28346,
            "loc": {
              "start": {
                "line": 710,
                "column": 6
              },
              "end": {
                "line": 710,
                "column": 18
              }
            },
            "name": "defaultScale"
          },
          "computed": false
        },
        "right": {
          "type": "Literal",
          "start": 28349,
          "end": 28367,
          "loc": {
            "start": {
              "line": 710,
              "column": 21
            },
            "end": {
              "line": 710,
              "column": 39
            }
          },
          "value": 3.2229586226371154,
          "rawValue": 3.2229586226371154,
          "raw": "3.2229586226371154"
        }
      }
    }
  ]
}