{
  "type": "Program",
  "start": 0,
  "end": 27660,
  "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": 41,
      "end": 85,
      "loc": {
        "start": {
          "line": 2,
          "column": 0
        },
        "end": {
          "line": 2,
          "column": 44
        }
      },
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "start": 48,
          "end": 56,
          "loc": {
            "start": {
              "line": 2,
              "column": 7
            },
            "end": {
              "line": 2,
              "column": 15
            }
          },
          "local": {
            "type": "Identifier",
            "start": 48,
            "end": 56,
            "loc": {
              "start": {
                "line": 2,
                "column": 7
              },
              "end": {
                "line": 2,
                "column": 15
              }
            },
            "name": "Sketcher"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 62,
        "end": 84,
        "loc": {
          "start": {
            "line": 2,
            "column": 21
          },
          "end": {
            "line": 2,
            "column": 43
          }
        },
        "value": "../sketcher/sketcher",
        "rawValue": "../sketcher/sketcher",
        "raw": "'../sketcher/sketcher'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 86,
      "end": 139,
      "loc": {
        "start": {
          "line": 3,
          "column": 0
        },
        "end": {
          "line": 3,
          "column": 53
        }
      },
      "specifiers": [
        {
          "type": "ImportSpecifier",
          "start": 94,
          "end": 108,
          "loc": {
            "start": {
              "line": 3,
              "column": 8
            },
            "end": {
              "line": 3,
              "column": 22
            }
          },
          "imported": {
            "type": "Identifier",
            "start": 94,
            "end": 108,
            "loc": {
              "start": {
                "line": 3,
                "column": 8
              },
              "end": {
                "line": 3,
                "column": 22
              }
            },
            "name": "ClassCadObject"
          },
          "local": {
            "type": "Identifier",
            "start": 94,
            "end": 108,
            "loc": {
              "start": {
                "line": 3,
                "column": 8
              },
              "end": {
                "line": 3,
                "column": 22
              }
            },
            "name": "ClassCadObject"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 115,
        "end": 138,
        "loc": {
          "start": {
            "line": 3,
            "column": 29
          },
          "end": {
            "line": 3,
            "column": 52
          }
        },
        "value": "../sketcher/ccobjects",
        "rawValue": "../sketcher/ccobjects",
        "raw": "'../sketcher/ccobjects'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 140,
      "end": 172,
      "loc": {
        "start": {
          "line": 4,
          "column": 0
        },
        "end": {
          "line": 4,
          "column": 32
        }
      },
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "start": 147,
          "end": 151,
          "loc": {
            "start": {
              "line": 4,
              "column": 7
            },
            "end": {
              "line": 4,
              "column": 11
            }
          },
          "local": {
            "type": "Identifier",
            "start": 147,
            "end": 151,
            "loc": {
              "start": {
                "line": 4,
                "column": 7
              },
              "end": {
                "line": 4,
                "column": 11
              }
            },
            "name": "View"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 157,
        "end": 171,
        "loc": {
          "start": {
            "line": 4,
            "column": 17
          },
          "end": {
            "line": 4,
            "column": 31
          }
        },
        "value": "../core/view",
        "rawValue": "../core/view",
        "raw": "'../core/view'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 173,
      "end": 242,
      "loc": {
        "start": {
          "line": 5,
          "column": 0
        },
        "end": {
          "line": 5,
          "column": 69
        }
      },
      "specifiers": [
        {
          "type": "ImportSpecifier",
          "start": 181,
          "end": 188,
          "loc": {
            "start": {
              "line": 5,
              "column": 8
            },
            "end": {
              "line": 5,
              "column": 15
            }
          },
          "imported": {
            "type": "Identifier",
            "start": 181,
            "end": 188,
            "loc": {
              "start": {
                "line": 5,
                "column": 8
              },
              "end": {
                "line": 5,
                "column": 15
              }
            },
            "name": "parseTo"
          },
          "local": {
            "type": "Identifier",
            "start": 181,
            "end": 188,
            "loc": {
              "start": {
                "line": 5,
                "column": 8
              },
              "end": {
                "line": 5,
                "column": 15
              }
            },
            "name": "parseTo"
          }
        },
        {
          "type": "ImportSpecifier",
          "start": 190,
          "end": 200,
          "loc": {
            "start": {
              "line": 5,
              "column": 17
            },
            "end": {
              "line": 5,
              "column": 27
            }
          },
          "imported": {
            "type": "Identifier",
            "start": 190,
            "end": 200,
            "loc": {
              "start": {
                "line": 5,
                "column": 17
              },
              "end": {
                "line": 5,
                "column": 27
              }
            },
            "name": "Expression"
          },
          "local": {
            "type": "Identifier",
            "start": 190,
            "end": 200,
            "loc": {
              "start": {
                "line": 5,
                "column": 17
              },
              "end": {
                "line": 5,
                "column": 27
              }
            },
            "name": "Expression"
          }
        },
        {
          "type": "ImportSpecifier",
          "start": 202,
          "end": 211,
          "loc": {
            "start": {
              "line": 5,
              "column": 29
            },
            "end": {
              "line": 5,
              "column": 38
            }
          },
          "imported": {
            "type": "Identifier",
            "start": 202,
            "end": 211,
            "loc": {
              "start": {
                "line": 5,
                "column": 29
              },
              "end": {
                "line": 5,
                "column": 38
              }
            },
            "name": "Statement"
          },
          "local": {
            "type": "Identifier",
            "start": 202,
            "end": 211,
            "loc": {
              "start": {
                "line": 5,
                "column": 29
              },
              "end": {
                "line": 5,
                "column": 38
              }
            },
            "name": "Statement"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 218,
        "end": 241,
        "loc": {
          "start": {
            "line": 5,
            "column": 45
          },
          "end": {
            "line": 5,
            "column": 68
          }
        },
        "value": "../sketcher/cchelpers",
        "rawValue": "../sketcher/cchelpers",
        "raw": "'../sketcher/cchelpers'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 243,
      "end": 269,
      "loc": {
        "start": {
          "line": 6,
          "column": 0
        },
        "end": {
          "line": 6,
          "column": 26
        }
      },
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "start": 250,
          "end": 255,
          "loc": {
            "start": {
              "line": 6,
              "column": 7
            },
            "end": {
              "line": 6,
              "column": 12
            }
          },
          "local": {
            "type": "Identifier",
            "start": 250,
            "end": 255,
            "loc": {
              "start": {
                "line": 6,
                "column": 7
              },
              "end": {
                "line": 6,
                "column": 12
              }
            },
            "name": "THREE"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 261,
        "end": 268,
        "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": 271,
          "end": 320,
          "loc": {
            "start": {
              "line": 8,
              "column": 0
            },
            "end": {
              "line": 8,
              "column": 49
            }
          },
          "range": [
            271,
            320
          ]
        },
        {
          "type": "CommentLine",
          "value": "var interactMaterial = new THREE.MeshBasicMaterial({color: 0xff0000, visible: false, side: THREE.DoubleSide});",
          "start": 321,
          "end": 433,
          "loc": {
            "start": {
              "line": 9,
              "column": 0
            },
            "end": {
              "line": 9,
              "column": 112
            }
          },
          "range": [
            321,
            433
          ]
        },
        {
          "type": "CommentLine",
          "value": " mixin for geometric objects that can be highlighted",
          "start": 435,
          "end": 489,
          "loc": {
            "start": {
              "line": 11,
              "column": 0
            },
            "end": {
              "line": 11,
              "column": 54
            }
          },
          "range": [
            435,
            489
          ]
        }
      ]
    },
    {
      "type": "FunctionDeclaration",
      "start": 490,
      "end": 1925,
      "loc": {
        "start": {
          "line": 12,
          "column": 0
        },
        "end": {
          "line": 43,
          "column": 1
        }
      },
      "id": {
        "type": "Identifier",
        "start": 499,
        "end": 516,
        "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": 519,
        "end": 1925,
        "loc": {
          "start": {
            "line": 12,
            "column": 29
          },
          "end": {
            "line": 43,
            "column": 1
          }
        },
        "body": [
          {
            "type": "ExpressionStatement",
            "start": 525,
            "end": 1438,
            "loc": {
              "start": {
                "line": 13,
                "column": 4
              },
              "end": {
                "line": 32,
                "column": 6
              }
            },
            "expression": {
              "type": "AssignmentExpression",
              "start": 525,
              "end": 1437,
              "loc": {
                "start": {
                  "line": 13,
                  "column": 4
                },
                "end": {
                  "line": 32,
                  "column": 5
                }
              },
              "operator": "=",
              "left": {
                "type": "MemberExpression",
                "start": 525,
                "end": 535,
                "loc": {
                  "start": {
                    "line": 13,
                    "column": 4
                  },
                  "end": {
                    "line": 13,
                    "column": 14
                  }
                },
                "object": {
                  "type": "ThisExpression",
                  "start": 525,
                  "end": 529,
                  "loc": {
                    "start": {
                      "line": 13,
                      "column": 4
                    },
                    "end": {
                      "line": 13,
                      "column": 8
                    }
                  }
                },
                "property": {
                  "type": "Identifier",
                  "start": 530,
                  "end": 535,
                  "loc": {
                    "start": {
                      "line": 13,
                      "column": 9
                    },
                    "end": {
                      "line": 13,
                      "column": 14
                    }
                  },
                  "name": "hover"
                },
                "computed": false
              },
              "right": {
                "type": "FunctionExpression",
                "start": 538,
                "end": 1437,
                "loc": {
                  "start": {
                    "line": 13,
                    "column": 17
                  },
                  "end": {
                    "line": 32,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 549,
                  "end": 1437,
                  "loc": {
                    "start": {
                      "line": 13,
                      "column": 28
                    },
                    "end": {
                      "line": 32,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 559,
                      "end": 581,
                      "loc": {
                        "start": {
                          "line": 14,
                          "column": 8
                        },
                        "end": {
                          "line": 14,
                          "column": 30
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 563,
                          "end": 580,
                          "loc": {
                            "start": {
                              "line": 14,
                              "column": 12
                            },
                            "end": {
                              "line": 14,
                              "column": 29
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 563,
                            "end": 566,
                            "loc": {
                              "start": {
                                "line": 14,
                                "column": 12
                              },
                              "end": {
                                "line": 14,
                                "column": 15
                              }
                            },
                            "name": "obj"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 569,
                            "end": 580,
                            "loc": {
                              "start": {
                                "line": 14,
                                "column": 18
                              },
                              "end": {
                                "line": 14,
                                "column": 29
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 569,
                              "end": 573,
                              "loc": {
                                "start": {
                                  "line": 14,
                                  "column": 18
                                },
                                "end": {
                                  "line": 14,
                                  "column": 22
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 574,
                              "end": 580,
                              "loc": {
                                "start": {
                                  "line": 14,
                                  "column": 23
                                },
                                "end": {
                                  "line": 14,
                                  "column": 29
                                }
                              },
                              "name": "parent"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 590,
                      "end": 629,
                      "loc": {
                        "start": {
                          "line": 15,
                          "column": 8
                        },
                        "end": {
                          "line": 15,
                          "column": 47
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 594,
                          "end": 628,
                          "loc": {
                            "start": {
                              "line": 15,
                              "column": 12
                            },
                            "end": {
                              "line": 15,
                              "column": 46
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 594,
                            "end": 600,
                            "loc": {
                              "start": {
                                "line": 15,
                                "column": 12
                              },
                              "end": {
                                "line": 15,
                                "column": 18
                              }
                            },
                            "name": "sketch"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 603,
                            "end": 628,
                            "loc": {
                              "start": {
                                "line": 15,
                                "column": 21
                              },
                              "end": {
                                "line": 15,
                                "column": 46
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 603,
                              "end": 622,
                              "loc": {
                                "start": {
                                  "line": 15,
                                  "column": 21
                                },
                                "end": {
                                  "line": 15,
                                  "column": 40
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 603,
                                "end": 609,
                                "loc": {
                                  "start": {
                                    "line": 15,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 15,
                                    "column": 27
                                  }
                                },
                                "name": "Sketch"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 610,
                                "end": 622,
                                "loc": {
                                  "start": {
                                    "line": 15,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 15,
                                    "column": 40
                                  }
                                },
                                "name": "FindSketchOf"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "ThisExpression",
                                "start": 623,
                                "end": 627,
                                "loc": {
                                  "start": {
                                    "line": 15,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 15,
                                    "column": 45
                                  }
                                }
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 638,
                      "end": 658,
                      "loc": {
                        "start": {
                          "line": 16,
                          "column": 8
                        },
                        "end": {
                          "line": 16,
                          "column": 28
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 642,
                        "end": 649,
                        "loc": {
                          "start": {
                            "line": 16,
                            "column": 12
                          },
                          "end": {
                            "line": 16,
                            "column": 19
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "Identifier",
                          "start": 643,
                          "end": 649,
                          "loc": {
                            "start": {
                              "line": 16,
                              "column": 13
                            },
                            "end": {
                              "line": 16,
                              "column": 19
                            }
                          },
                          "name": "sketch"
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 651,
                        "end": 658,
                        "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": 662,
                          "end": 692,
                          "loc": {
                            "start": {
                              "line": 16,
                              "column": 32
                            },
                            "end": {
                              "line": 16,
                              "column": 62
                            }
                          },
                          "range": [
                            662,
                            692
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 701,
                      "end": 768,
                      "loc": {
                        "start": {
                          "line": 17,
                          "column": 8
                        },
                        "end": {
                          "line": 17,
                          "column": 75
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 701,
                        "end": 767,
                        "loc": {
                          "start": {
                            "line": 17,
                            "column": 8
                          },
                          "end": {
                            "line": 17,
                            "column": 74
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 701,
                          "end": 720,
                          "loc": {
                            "start": {
                              "line": 17,
                              "column": 8
                            },
                            "end": {
                              "line": 17,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 701,
                            "end": 714,
                            "loc": {
                              "start": {
                                "line": 17,
                                "column": 8
                              },
                              "end": {
                                "line": 17,
                                "column": 21
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 701,
                              "end": 705,
                              "loc": {
                                "start": {
                                  "line": 17,
                                  "column": 8
                                },
                                "end": {
                                  "line": 17,
                                  "column": 12
                                }
                              },
                              "leadingComments": null
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 706,
                              "end": 714,
                              "loc": {
                                "start": {
                                  "line": 17,
                                  "column": 13
                                },
                                "end": {
                                  "line": 17,
                                  "column": 21
                                }
                              },
                              "name": "material"
                            },
                            "computed": false,
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 715,
                            "end": 720,
                            "loc": {
                              "start": {
                                "line": 17,
                                "column": 22
                              },
                              "end": {
                                "line": 17,
                                "column": 27
                              }
                            },
                            "name": "color"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 723,
                          "end": 767,
                          "loc": {
                            "start": {
                              "line": 17,
                              "column": 30
                            },
                            "end": {
                              "line": 17,
                              "column": 74
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 727,
                            "end": 738,
                            "loc": {
                              "start": {
                                "line": 17,
                                "column": 34
                              },
                              "end": {
                                "line": 17,
                                "column": 45
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 727,
                              "end": 732,
                              "loc": {
                                "start": {
                                  "line": 17,
                                  "column": 34
                                },
                                "end": {
                                  "line": 17,
                                  "column": 39
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 733,
                              "end": 738,
                              "loc": {
                                "start": {
                                  "line": 17,
                                  "column": 40
                                },
                                "end": {
                                  "line": 17,
                                  "column": 45
                                }
                              },
                              "name": "Color"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "CallExpression",
                              "start": 739,
                              "end": 766,
                              "loc": {
                                "start": {
                                  "line": 17,
                                  "column": 46
                                },
                                "end": {
                                  "line": 17,
                                  "column": 73
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 739,
                                "end": 747,
                                "loc": {
                                  "start": {
                                    "line": 17,
                                    "column": 46
                                  },
                                  "end": {
                                    "line": 17,
                                    "column": 54
                                  }
                                },
                                "name": "getColor"
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 748,
                                  "end": 759,
                                  "loc": {
                                    "start": {
                                      "line": 17,
                                      "column": 55
                                    },
                                    "end": {
                                      "line": 17,
                                      "column": 66
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 748,
                                    "end": 752,
                                    "loc": {
                                      "start": {
                                        "line": 17,
                                        "column": 55
                                      },
                                      "end": {
                                        "line": 17,
                                        "column": 59
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 753,
                                    "end": 759,
                                    "loc": {
                                      "start": {
                                        "line": 17,
                                        "column": 60
                                      },
                                      "end": {
                                        "line": 17,
                                        "column": 66
                                      }
                                    },
                                    "name": "parent"
                                  },
                                  "computed": false
                                },
                                {
                                  "type": "Literal",
                                  "start": 761,
                                  "end": 765,
                                  "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": 662,
                          "end": 692,
                          "loc": {
                            "start": {
                              "line": 16,
                              "column": 32
                            },
                            "end": {
                              "line": 16,
                              "column": 62
                            }
                          },
                          "range": [
                            662,
                            692
                          ]
                        }
                      ]
                    },
                    {
                      "type": "IfStatement",
                      "start": 777,
                      "end": 815,
                      "loc": {
                        "start": {
                          "line": 18,
                          "column": 8
                        },
                        "end": {
                          "line": 18,
                          "column": 46
                        }
                      },
                      "test": {
                        "type": "MemberExpression",
                        "start": 781,
                        "end": 806,
                        "loc": {
                          "start": {
                            "line": 18,
                            "column": 12
                          },
                          "end": {
                            "line": 18,
                            "column": 37
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 781,
                          "end": 784,
                          "loc": {
                            "start": {
                              "line": 18,
                              "column": 12
                            },
                            "end": {
                              "line": 18,
                              "column": 15
                            }
                          },
                          "name": "obj"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 785,
                          "end": 806,
                          "loc": {
                            "start": {
                              "line": 18,
                              "column": 16
                            },
                            "end": {
                              "line": 18,
                              "column": 37
                            }
                          },
                          "name": "auxiliaryConstruction"
                        },
                        "computed": false
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 808,
                        "end": 815,
                        "loc": {
                          "start": {
                            "line": 18,
                            "column": 39
                          },
                          "end": {
                            "line": 18,
                            "column": 46
                          }
                        },
                        "argument": null
                      },
                      "alternate": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 824,
                      "end": 1023,
                      "loc": {
                        "start": {
                          "line": 19,
                          "column": 8
                        },
                        "end": {
                          "line": 25,
                          "column": 10
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 828,
                          "end": 1022,
                          "loc": {
                            "start": {
                              "line": 19,
                              "column": 12
                            },
                            "end": {
                              "line": 25,
                              "column": 9
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 828,
                            "end": 836,
                            "loc": {
                              "start": {
                                "line": 19,
                                "column": 12
                              },
                              "end": {
                                "line": 19,
                                "column": 20
                              }
                            },
                            "name": "material"
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 839,
                            "end": 1022,
                            "loc": {
                              "start": {
                                "line": 19,
                                "column": 23
                              },
                              "end": {
                                "line": 25,
                                "column": 9
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 843,
                              "end": 866,
                              "loc": {
                                "start": {
                                  "line": 19,
                                  "column": 27
                                },
                                "end": {
                                  "line": 19,
                                  "column": 50
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 843,
                                "end": 848,
                                "loc": {
                                  "start": {
                                    "line": 19,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 19,
                                    "column": 32
                                  }
                                },
                                "name": "THREE"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 849,
                                "end": 866,
                                "loc": {
                                  "start": {
                                    "line": 19,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 19,
                                    "column": 50
                                  }
                                },
                                "name": "LineBasicMaterial"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "ObjectExpression",
                                "start": 880,
                                "end": 1012,
                                "loc": {
                                  "start": {
                                    "line": 20,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 24,
                                    "column": 13
                                  }
                                },
                                "properties": [
                                  {
                                    "type": "Property",
                                    "start": 898,
                                    "end": 933,
                                    "loc": {
                                      "start": {
                                        "line": 21,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 21,
                                        "column": 51
                                      }
                                    },
                                    "method": false,
                                    "shorthand": false,
                                    "computed": false,
                                    "key": {
                                      "type": "Identifier",
                                      "start": 898,
                                      "end": 903,
                                      "loc": {
                                        "start": {
                                          "line": 21,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 21,
                                          "column": 21
                                        }
                                      },
                                      "name": "color"
                                    },
                                    "value": {
                                      "type": "CallExpression",
                                      "start": 905,
                                      "end": 933,
                                      "loc": {
                                        "start": {
                                          "line": 21,
                                          "column": 23
                                        },
                                        "end": {
                                          "line": 21,
                                          "column": 51
                                        }
                                      },
                                      "callee": {
                                        "type": "Identifier",
                                        "start": 905,
                                        "end": 913,
                                        "loc": {
                                          "start": {
                                            "line": 21,
                                            "column": 23
                                          },
                                          "end": {
                                            "line": 21,
                                            "column": 31
                                          }
                                        },
                                        "name": "getColor"
                                      },
                                      "arguments": [
                                        {
                                          "type": "MemberExpression",
                                          "start": 914,
                                          "end": 925,
                                          "loc": {
                                            "start": {
                                              "line": 21,
                                              "column": 32
                                            },
                                            "end": {
                                              "line": 21,
                                              "column": 43
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 914,
                                            "end": 918,
                                            "loc": {
                                              "start": {
                                                "line": 21,
                                                "column": 32
                                              },
                                              "end": {
                                                "line": 21,
                                                "column": 36
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 919,
                                            "end": 925,
                                            "loc": {
                                              "start": {
                                                "line": 21,
                                                "column": 37
                                              },
                                              "end": {
                                                "line": 21,
                                                "column": 43
                                              }
                                            },
                                            "name": "parent"
                                          },
                                          "computed": false
                                        },
                                        {
                                          "type": "Literal",
                                          "start": 927,
                                          "end": 932,
                                          "loc": {
                                            "start": {
                                              "line": 21,
                                              "column": 45
                                            },
                                            "end": {
                                              "line": 21,
                                              "column": 50
                                            }
                                          },
                                          "value": false,
                                          "rawValue": false,
                                          "raw": "false"
                                        }
                                      ]
                                    },
                                    "kind": "init"
                                  },
                                  {
                                    "type": "Property",
                                    "start": 951,
                                    "end": 968,
                                    "loc": {
                                      "start": {
                                        "line": 22,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 22,
                                        "column": 33
                                      }
                                    },
                                    "method": false,
                                    "shorthand": false,
                                    "computed": false,
                                    "key": {
                                      "type": "Identifier",
                                      "start": 951,
                                      "end": 962,
                                      "loc": {
                                        "start": {
                                          "line": 22,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 22,
                                          "column": 27
                                        }
                                      },
                                      "name": "transparent"
                                    },
                                    "value": {
                                      "type": "Literal",
                                      "start": 964,
                                      "end": 968,
                                      "loc": {
                                        "start": {
                                          "line": 22,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 22,
                                          "column": 33
                                        }
                                      },
                                      "value": true,
                                      "rawValue": true,
                                      "raw": "true"
                                    },
                                    "kind": "init"
                                  },
                                  {
                                    "type": "Property",
                                    "start": 986,
                                    "end": 998,
                                    "loc": {
                                      "start": {
                                        "line": 23,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 23,
                                        "column": 28
                                      }
                                    },
                                    "method": false,
                                    "shorthand": false,
                                    "computed": false,
                                    "key": {
                                      "type": "Identifier",
                                      "start": 986,
                                      "end": 993,
                                      "loc": {
                                        "start": {
                                          "line": 23,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 23,
                                          "column": 23
                                        }
                                      },
                                      "name": "opacity"
                                    },
                                    "value": {
                                      "type": "Literal",
                                      "start": 995,
                                      "end": 998,
                                      "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": 1032,
                      "end": 1074,
                      "loc": {
                        "start": {
                          "line": 26,
                          "column": 8
                        },
                        "end": {
                          "line": 26,
                          "column": 50
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 1036,
                          "end": 1073,
                          "loc": {
                            "start": {
                              "line": 26,
                              "column": 12
                            },
                            "end": {
                              "line": 26,
                              "column": 49
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 1036,
                            "end": 1044,
                            "loc": {
                              "start": {
                                "line": 26,
                                "column": 12
                              },
                              "end": {
                                "line": 26,
                                "column": 20
                              }
                            },
                            "name": "geometry"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 1047,
                            "end": 1073,
                            "loc": {
                              "start": {
                                "line": 26,
                                "column": 23
                              },
                              "end": {
                                "line": 26,
                                "column": 49
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 1047,
                              "end": 1071,
                              "loc": {
                                "start": {
                                  "line": 26,
                                  "column": 23
                                },
                                "end": {
                                  "line": 26,
                                  "column": 47
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 1047,
                                "end": 1050,
                                "loc": {
                                  "start": {
                                    "line": 26,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 26,
                                    "column": 26
                                  }
                                },
                                "name": "obj"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 1051,
                                "end": 1071,
                                "loc": {
                                  "start": {
                                    "line": 26,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 26,
                                    "column": 47
                                  }
                                },
                                "name": "getAuxiliaryGeometry"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 1083,
                      "end": 1164,
                      "loc": {
                        "start": {
                          "line": 27,
                          "column": 8
                        },
                        "end": {
                          "line": 27,
                          "column": 89
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 1087,
                          "end": 1163,
                          "loc": {
                            "start": {
                              "line": 27,
                              "column": 12
                            },
                            "end": {
                              "line": 27,
                              "column": 88
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 1087,
                            "end": 1108,
                            "loc": {
                              "start": {
                                "line": 27,
                                "column": 12
                              },
                              "end": {
                                "line": 27,
                                "column": 33
                              }
                            },
                            "name": "auxiliaryConstruction"
                          },
                          "init": {
                            "type": "ConditionalExpression",
                            "start": 1111,
                            "end": 1163,
                            "loc": {
                              "start": {
                                "line": 27,
                                "column": 36
                              },
                              "end": {
                                "line": 27,
                                "column": 88
                              }
                            },
                            "test": {
                              "type": "Identifier",
                              "start": 1111,
                              "end": 1119,
                              "loc": {
                                "start": {
                                  "line": 27,
                                  "column": 36
                                },
                                "end": {
                                  "line": 27,
                                  "column": 44
                                }
                              },
                              "name": "geometry"
                            },
                            "consequent": {
                              "type": "NewExpression",
                              "start": 1122,
                              "end": 1156,
                              "loc": {
                                "start": {
                                  "line": 27,
                                  "column": 47
                                },
                                "end": {
                                  "line": 27,
                                  "column": 81
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 1126,
                                "end": 1136,
                                "loc": {
                                  "start": {
                                    "line": 27,
                                    "column": 51
                                  },
                                  "end": {
                                    "line": 27,
                                    "column": 61
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 1126,
                                  "end": 1131,
                                  "loc": {
                                    "start": {
                                      "line": 27,
                                      "column": 51
                                    },
                                    "end": {
                                      "line": 27,
                                      "column": 56
                                    }
                                  },
                                  "name": "THREE"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 1132,
                                  "end": 1136,
                                  "loc": {
                                    "start": {
                                      "line": 27,
                                      "column": 57
                                    },
                                    "end": {
                                      "line": 27,
                                      "column": 61
                                    }
                                  },
                                  "name": "Line"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 1137,
                                  "end": 1145,
                                  "loc": {
                                    "start": {
                                      "line": 27,
                                      "column": 62
                                    },
                                    "end": {
                                      "line": 27,
                                      "column": 70
                                    }
                                  },
                                  "name": "geometry"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 1147,
                                  "end": 1155,
                                  "loc": {
                                    "start": {
                                      "line": 27,
                                      "column": 72
                                    },
                                    "end": {
                                      "line": 27,
                                      "column": 80
                                    }
                                  },
                                  "name": "material"
                                }
                              ]
                            },
                            "alternate": {
                              "type": "Literal",
                              "start": 1159,
                              "end": 1163,
                              "loc": {
                                "start": {
                                  "line": 27,
                                  "column": 84
                                },
                                "end": {
                                  "line": 27,
                                  "column": 88
                                }
                              },
                              "value": null,
                              "rawValue": null,
                              "raw": "null"
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 1173,
                      "end": 1223,
                      "loc": {
                        "start": {
                          "line": 28,
                          "column": 8
                        },
                        "end": {
                          "line": 28,
                          "column": 58
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 1173,
                        "end": 1222,
                        "loc": {
                          "start": {
                            "line": 28,
                            "column": 8
                          },
                          "end": {
                            "line": 28,
                            "column": 57
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 1173,
                          "end": 1198,
                          "loc": {
                            "start": {
                              "line": 28,
                              "column": 8
                            },
                            "end": {
                              "line": 28,
                              "column": 33
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 1173,
                            "end": 1176,
                            "loc": {
                              "start": {
                                "line": 28,
                                "column": 8
                              },
                              "end": {
                                "line": 28,
                                "column": 11
                              }
                            },
                            "name": "obj"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1177,
                            "end": 1198,
                            "loc": {
                              "start": {
                                "line": 28,
                                "column": 12
                              },
                              "end": {
                                "line": 28,
                                "column": 33
                              }
                            },
                            "name": "auxiliaryConstruction"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Identifier",
                          "start": 1201,
                          "end": 1222,
                          "loc": {
                            "start": {
                              "line": 28,
                              "column": 36
                            },
                            "end": {
                              "line": 28,
                              "column": 57
                            }
                          },
                          "name": "auxiliaryConstruction"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 1232,
                      "end": 1324,
                      "loc": {
                        "start": {
                          "line": 29,
                          "column": 8
                        },
                        "end": {
                          "line": 29,
                          "column": 100
                        }
                      },
                      "expression": {
                        "type": "LogicalExpression",
                        "start": 1232,
                        "end": 1323,
                        "loc": {
                          "start": {
                            "line": 29,
                            "column": 8
                          },
                          "end": {
                            "line": 29,
                            "column": 99
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 1232,
                          "end": 1257,
                          "loc": {
                            "start": {
                              "line": 29,
                              "column": 8
                            },
                            "end": {
                              "line": 29,
                              "column": 33
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 1232,
                            "end": 1235,
                            "loc": {
                              "start": {
                                "line": 29,
                                "column": 8
                              },
                              "end": {
                                "line": 29,
                                "column": 11
                              }
                            },
                            "name": "obj"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1236,
                            "end": 1257,
                            "loc": {
                              "start": {
                                "line": 29,
                                "column": 12
                              },
                              "end": {
                                "line": 29,
                                "column": 33
                              }
                            },
                            "name": "auxiliaryConstruction"
                          },
                          "computed": false
                        },
                        "operator": "&&",
                        "right": {
                          "type": "CallExpression",
                          "start": 1261,
                          "end": 1323,
                          "loc": {
                            "start": {
                              "line": 29,
                              "column": 37
                            },
                            "end": {
                              "line": 29,
                              "column": 99
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 1261,
                            "end": 1300,
                            "loc": {
                              "start": {
                                "line": 29,
                                "column": 37
                              },
                              "end": {
                                "line": 29,
                                "column": 76
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 1261,
                              "end": 1295,
                              "loc": {
                                "start": {
                                  "line": 29,
                                  "column": 37
                                },
                                "end": {
                                  "line": 29,
                                  "column": 71
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 1261,
                                "end": 1286,
                                "loc": {
                                  "start": {
                                    "line": 29,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 29,
                                    "column": 62
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 1261,
                                  "end": 1264,
                                  "loc": {
                                    "start": {
                                      "line": 29,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 29,
                                      "column": 40
                                    }
                                  },
                                  "name": "obj"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 1265,
                                  "end": 1286,
                                  "loc": {
                                    "start": {
                                      "line": 29,
                                      "column": 41
                                    },
                                    "end": {
                                      "line": 29,
                                      "column": 62
                                    }
                                  },
                                  "name": "auxiliaryConstruction"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 1287,
                                "end": 1295,
                                "loc": {
                                  "start": {
                                    "line": 29,
                                    "column": 63
                                  },
                                  "end": {
                                    "line": 29,
                                    "column": 71
                                  }
                                },
                                "name": "position"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 1296,
                              "end": 1300,
                              "loc": {
                                "start": {
                                  "line": 29,
                                  "column": 72
                                },
                                "end": {
                                  "line": 29,
                                  "column": 76
                                }
                              },
                              "name": "copy"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "MemberExpression",
                              "start": 1301,
                              "end": 1322,
                              "loc": {
                                "start": {
                                  "line": 29,
                                  "column": 77
                                },
                                "end": {
                                  "line": 29,
                                  "column": 98
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 1301,
                                "end": 1313,
                                "loc": {
                                  "start": {
                                    "line": 29,
                                    "column": 77
                                  },
                                  "end": {
                                    "line": 29,
                                    "column": 89
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 1301,
                                  "end": 1304,
                                  "loc": {
                                    "start": {
                                      "line": 29,
                                      "column": 77
                                    },
                                    "end": {
                                      "line": 29,
                                      "column": 80
                                    }
                                  },
                                  "name": "obj"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 1305,
                                  "end": 1313,
                                  "loc": {
                                    "start": {
                                      "line": 29,
                                      "column": 81
                                    },
                                    "end": {
                                      "line": 29,
                                      "column": 89
                                    }
                                  },
                                  "name": "interact"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 1314,
                                "end": 1322,
                                "loc": {
                                  "start": {
                                    "line": 29,
                                    "column": 90
                                  },
                                  "end": {
                                    "line": 29,
                                    "column": 98
                                  }
                                },
                                "name": "position"
                              },
                              "computed": false
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "IfStatement",
                      "start": 1333,
                      "end": 1403,
                      "loc": {
                        "start": {
                          "line": 30,
                          "column": 8
                        },
                        "end": {
                          "line": 30,
                          "column": 78
                        }
                      },
                      "test": {
                        "type": "Identifier",
                        "start": 1337,
                        "end": 1358,
                        "loc": {
                          "start": {
                            "line": 30,
                            "column": 12
                          },
                          "end": {
                            "line": 30,
                            "column": 33
                          }
                        },
                        "name": "auxiliaryConstruction"
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 1360,
                        "end": 1403,
                        "loc": {
                          "start": {
                            "line": 30,
                            "column": 35
                          },
                          "end": {
                            "line": 30,
                            "column": 78
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 1360,
                          "end": 1402,
                          "loc": {
                            "start": {
                              "line": 30,
                              "column": 35
                            },
                            "end": {
                              "line": 30,
                              "column": 77
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 1360,
                            "end": 1379,
                            "loc": {
                              "start": {
                                "line": 30,
                                "column": 35
                              },
                              "end": {
                                "line": 30,
                                "column": 54
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 1360,
                              "end": 1366,
                              "loc": {
                                "start": {
                                  "line": 30,
                                  "column": 35
                                },
                                "end": {
                                  "line": 30,
                                  "column": 41
                                }
                              },
                              "name": "sketch"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 1367,
                              "end": 1379,
                              "loc": {
                                "start": {
                                  "line": 30,
                                  "column": 42
                                },
                                "end": {
                                  "line": 30,
                                  "column": 54
                                }
                              },
                              "name": "addAuxObject"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 1380,
                              "end": 1401,
                              "loc": {
                                "start": {
                                  "line": 30,
                                  "column": 55
                                },
                                "end": {
                                  "line": 30,
                                  "column": 76
                                }
                              },
                              "name": "auxiliaryConstruction"
                            }
                          ]
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 1412,
                      "end": 1431,
                      "loc": {
                        "start": {
                          "line": 31,
                          "column": 8
                        },
                        "end": {
                          "line": 31,
                          "column": 27
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 1412,
                        "end": 1430,
                        "loc": {
                          "start": {
                            "line": 31,
                            "column": 8
                          },
                          "end": {
                            "line": 31,
                            "column": 26
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 1412,
                          "end": 1423,
                          "loc": {
                            "start": {
                              "line": 31,
                              "column": 8
                            },
                            "end": {
                              "line": 31,
                              "column": 19
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 1412,
                            "end": 1415,
                            "loc": {
                              "start": {
                                "line": 31,
                                "column": 8
                              },
                              "end": {
                                "line": 31,
                                "column": 11
                              }
                            },
                            "name": "obj"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1416,
                            "end": 1423,
                            "loc": {
                              "start": {
                                "line": 31,
                                "column": 12
                              },
                              "end": {
                                "line": 31,
                                "column": 19
                              }
                            },
                            "name": "hovered"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 1426,
                          "end": 1430,
                          "loc": {
                            "start": {
                              "line": 31,
                              "column": 22
                            },
                            "end": {
                              "line": 31,
                              "column": 26
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          {
            "type": "ExpressionStatement",
            "start": 1443,
            "end": 1923,
            "loc": {
              "start": {
                "line": 33,
                "column": 4
              },
              "end": {
                "line": 42,
                "column": 6
              }
            },
            "expression": {
              "type": "AssignmentExpression",
              "start": 1443,
              "end": 1922,
              "loc": {
                "start": {
                  "line": 33,
                  "column": 4
                },
                "end": {
                  "line": 42,
                  "column": 5
                }
              },
              "operator": "=",
              "left": {
                "type": "MemberExpression",
                "start": 1443,
                "end": 1455,
                "loc": {
                  "start": {
                    "line": 33,
                    "column": 4
                  },
                  "end": {
                    "line": 33,
                    "column": 16
                  }
                },
                "object": {
                  "type": "ThisExpression",
                  "start": 1443,
                  "end": 1447,
                  "loc": {
                    "start": {
                      "line": 33,
                      "column": 4
                    },
                    "end": {
                      "line": 33,
                      "column": 8
                    }
                  }
                },
                "property": {
                  "type": "Identifier",
                  "start": 1448,
                  "end": 1455,
                  "loc": {
                    "start": {
                      "line": 33,
                      "column": 9
                    },
                    "end": {
                      "line": 33,
                      "column": 16
                    }
                  },
                  "name": "unhover"
                },
                "computed": false
              },
              "right": {
                "type": "FunctionExpression",
                "start": 1458,
                "end": 1922,
                "loc": {
                  "start": {
                    "line": 33,
                    "column": 19
                  },
                  "end": {
                    "line": 42,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 1469,
                  "end": 1922,
                  "loc": {
                    "start": {
                      "line": 33,
                      "column": 30
                    },
                    "end": {
                      "line": 42,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 1479,
                      "end": 1547,
                      "loc": {
                        "start": {
                          "line": 34,
                          "column": 8
                        },
                        "end": {
                          "line": 34,
                          "column": 76
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 1479,
                        "end": 1546,
                        "loc": {
                          "start": {
                            "line": 34,
                            "column": 8
                          },
                          "end": {
                            "line": 34,
                            "column": 75
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 1479,
                          "end": 1498,
                          "loc": {
                            "start": {
                              "line": 34,
                              "column": 8
                            },
                            "end": {
                              "line": 34,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 1479,
                            "end": 1492,
                            "loc": {
                              "start": {
                                "line": 34,
                                "column": 8
                              },
                              "end": {
                                "line": 34,
                                "column": 21
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 1479,
                              "end": 1483,
                              "loc": {
                                "start": {
                                  "line": 34,
                                  "column": 8
                                },
                                "end": {
                                  "line": 34,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 1484,
                              "end": 1492,
                              "loc": {
                                "start": {
                                  "line": 34,
                                  "column": 13
                                },
                                "end": {
                                  "line": 34,
                                  "column": 21
                                }
                              },
                              "name": "material"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1493,
                            "end": 1498,
                            "loc": {
                              "start": {
                                "line": 34,
                                "column": 22
                              },
                              "end": {
                                "line": 34,
                                "column": 27
                              }
                            },
                            "name": "color"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 1501,
                          "end": 1546,
                          "loc": {
                            "start": {
                              "line": 34,
                              "column": 30
                            },
                            "end": {
                              "line": 34,
                              "column": 75
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 1505,
                            "end": 1516,
                            "loc": {
                              "start": {
                                "line": 34,
                                "column": 34
                              },
                              "end": {
                                "line": 34,
                                "column": 45
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 1505,
                              "end": 1510,
                              "loc": {
                                "start": {
                                  "line": 34,
                                  "column": 34
                                },
                                "end": {
                                  "line": 34,
                                  "column": 39
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 1511,
                              "end": 1516,
                              "loc": {
                                "start": {
                                  "line": 34,
                                  "column": 40
                                },
                                "end": {
                                  "line": 34,
                                  "column": 45
                                }
                              },
                              "name": "Color"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "CallExpression",
                              "start": 1517,
                              "end": 1545,
                              "loc": {
                                "start": {
                                  "line": 34,
                                  "column": 46
                                },
                                "end": {
                                  "line": 34,
                                  "column": 74
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 1517,
                                "end": 1525,
                                "loc": {
                                  "start": {
                                    "line": 34,
                                    "column": 46
                                  },
                                  "end": {
                                    "line": 34,
                                    "column": 54
                                  }
                                },
                                "name": "getColor"
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 1526,
                                  "end": 1537,
                                  "loc": {
                                    "start": {
                                      "line": 34,
                                      "column": 55
                                    },
                                    "end": {
                                      "line": 34,
                                      "column": 66
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 1526,
                                    "end": 1530,
                                    "loc": {
                                      "start": {
                                        "line": 34,
                                        "column": 55
                                      },
                                      "end": {
                                        "line": 34,
                                        "column": 59
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 1531,
                                    "end": 1537,
                                    "loc": {
                                      "start": {
                                        "line": 34,
                                        "column": 60
                                      },
                                      "end": {
                                        "line": 34,
                                        "column": 66
                                      }
                                    },
                                    "name": "parent"
                                  },
                                  "computed": false
                                },
                                {
                                  "type": "Literal",
                                  "start": 1539,
                                  "end": 1544,
                                  "loc": {
                                    "start": {
                                      "line": 34,
                                      "column": 68
                                    },
                                    "end": {
                                      "line": 34,
                                      "column": 73
                                    }
                                  },
                                  "value": false,
                                  "rawValue": false,
                                  "raw": "false"
                                }
                              ]
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 1556,
                      "end": 1578,
                      "loc": {
                        "start": {
                          "line": 35,
                          "column": 8
                        },
                        "end": {
                          "line": 35,
                          "column": 30
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 1560,
                          "end": 1577,
                          "loc": {
                            "start": {
                              "line": 35,
                              "column": 12
                            },
                            "end": {
                              "line": 35,
                              "column": 29
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 1560,
                            "end": 1563,
                            "loc": {
                              "start": {
                                "line": 35,
                                "column": 12
                              },
                              "end": {
                                "line": 35,
                                "column": 15
                              }
                            },
                            "name": "obj"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 1566,
                            "end": 1577,
                            "loc": {
                              "start": {
                                "line": 35,
                                "column": 18
                              },
                              "end": {
                                "line": 35,
                                "column": 29
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 1566,
                              "end": 1570,
                              "loc": {
                                "start": {
                                  "line": 35,
                                  "column": 18
                                },
                                "end": {
                                  "line": 35,
                                  "column": 22
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 1571,
                              "end": 1577,
                              "loc": {
                                "start": {
                                  "line": 35,
                                  "column": 23
                                },
                                "end": {
                                  "line": 35,
                                  "column": 29
                                }
                              },
                              "name": "parent"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 1587,
                      "end": 1916,
                      "loc": {
                        "start": {
                          "line": 36,
                          "column": 8
                        },
                        "end": {
                          "line": 41,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "MemberExpression",
                        "start": 1591,
                        "end": 1616,
                        "loc": {
                          "start": {
                            "line": 36,
                            "column": 12
                          },
                          "end": {
                            "line": 36,
                            "column": 37
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 1591,
                          "end": 1594,
                          "loc": {
                            "start": {
                              "line": 36,
                              "column": 12
                            },
                            "end": {
                              "line": 36,
                              "column": 15
                            }
                          },
                          "name": "obj"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 1595,
                          "end": 1616,
                          "loc": {
                            "start": {
                              "line": 36,
                              "column": 16
                            },
                            "end": {
                              "line": 36,
                              "column": 37
                            }
                          },
                          "name": "auxiliaryConstruction"
                        },
                        "computed": false
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 1618,
                        "end": 1916,
                        "loc": {
                          "start": {
                            "line": 36,
                            "column": 39
                          },
                          "end": {
                            "line": 41,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 1732,
                            "end": 1792,
                            "loc": {
                              "start": {
                                "line": 38,
                                "column": 12
                              },
                              "end": {
                                "line": 38,
                                "column": 72
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 1736,
                                "end": 1791,
                                "loc": {
                                  "start": {
                                    "line": 38,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 38,
                                    "column": 71
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 1736,
                                  "end": 1742,
                                  "loc": {
                                    "start": {
                                      "line": 38,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 38,
                                      "column": 22
                                    }
                                  },
                                  "name": "sketch",
                                  "leadingComments": null
                                },
                                "init": {
                                  "type": "CallExpression",
                                  "start": 1745,
                                  "end": 1791,
                                  "loc": {
                                    "start": {
                                      "line": 38,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 38,
                                      "column": 71
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 1745,
                                    "end": 1764,
                                    "loc": {
                                      "start": {
                                        "line": 38,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 38,
                                        "column": 44
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 1745,
                                      "end": 1751,
                                      "loc": {
                                        "start": {
                                          "line": 38,
                                          "column": 25
                                        },
                                        "end": {
                                          "line": 38,
                                          "column": 31
                                        }
                                      },
                                      "name": "Sketch"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 1752,
                                      "end": 1764,
                                      "loc": {
                                        "start": {
                                          "line": 38,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 38,
                                          "column": 44
                                        }
                                      },
                                      "name": "FindSketchOf"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "MemberExpression",
                                      "start": 1765,
                                      "end": 1790,
                                      "loc": {
                                        "start": {
                                          "line": 38,
                                          "column": 45
                                        },
                                        "end": {
                                          "line": 38,
                                          "column": 70
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 1765,
                                        "end": 1768,
                                        "loc": {
                                          "start": {
                                            "line": 38,
                                            "column": 45
                                          },
                                          "end": {
                                            "line": 38,
                                            "column": 48
                                          }
                                        },
                                        "name": "obj"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 1769,
                                        "end": 1790,
                                        "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": 1632,
                                "end": 1719,
                                "loc": {
                                  "start": {
                                    "line": 37,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 37,
                                    "column": 99
                                  }
                                },
                                "range": [
                                  1632,
                                  1719
                                ]
                              }
                            ]
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 1805,
                            "end": 1855,
                            "loc": {
                              "start": {
                                "line": 39,
                                "column": 12
                              },
                              "end": {
                                "line": 39,
                                "column": 62
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 1805,
                              "end": 1854,
                              "loc": {
                                "start": {
                                  "line": 39,
                                  "column": 12
                                },
                                "end": {
                                  "line": 39,
                                  "column": 61
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 1805,
                                "end": 1827,
                                "loc": {
                                  "start": {
                                    "line": 39,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 39,
                                    "column": 34
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 1805,
                                  "end": 1811,
                                  "loc": {
                                    "start": {
                                      "line": 39,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 39,
                                      "column": 18
                                    }
                                  },
                                  "name": "sketch"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 1812,
                                  "end": 1827,
                                  "loc": {
                                    "start": {
                                      "line": 39,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 39,
                                      "column": 34
                                    }
                                  },
                                  "name": "removeAuxObject"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 1828,
                                  "end": 1853,
                                  "loc": {
                                    "start": {
                                      "line": 39,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 39,
                                      "column": 60
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 1828,
                                    "end": 1831,
                                    "loc": {
                                      "start": {
                                        "line": 39,
                                        "column": 35
                                      },
                                      "end": {
                                        "line": 39,
                                        "column": 38
                                      }
                                    },
                                    "name": "obj"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 1832,
                                    "end": 1853,
                                    "loc": {
                                      "start": {
                                        "line": 39,
                                        "column": 39
                                      },
                                      "end": {
                                        "line": 39,
                                        "column": 60
                                      }
                                    },
                                    "name": "auxiliaryConstruction"
                                  },
                                  "computed": false
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 1868,
                            "end": 1906,
                            "loc": {
                              "start": {
                                "line": 40,
                                "column": 12
                              },
                              "end": {
                                "line": 40,
                                "column": 50
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 1868,
                              "end": 1905,
                              "loc": {
                                "start": {
                                  "line": 40,
                                  "column": 12
                                },
                                "end": {
                                  "line": 40,
                                  "column": 49
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 1868,
                                "end": 1893,
                                "loc": {
                                  "start": {
                                    "line": 40,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 40,
                                    "column": 37
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 1868,
                                  "end": 1871,
                                  "loc": {
                                    "start": {
                                      "line": 40,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 40,
                                      "column": 15
                                    }
                                  },
                                  "name": "obj"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 1872,
                                  "end": 1893,
                                  "loc": {
                                    "start": {
                                      "line": 40,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 40,
                                      "column": 37
                                    }
                                  },
                                  "name": "auxiliaryConstruction"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "Identifier",
                                "start": 1896,
                                "end": 1905,
                                "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": 271,
          "end": 320,
          "loc": {
            "start": {
              "line": 8,
              "column": 0
            },
            "end": {
              "line": 8,
              "column": 49
            }
          },
          "range": [
            271,
            320
          ]
        },
        {
          "type": "CommentLine",
          "value": "var interactMaterial = new THREE.MeshBasicMaterial({color: 0xff0000, visible: false, side: THREE.DoubleSide});",
          "start": 321,
          "end": 433,
          "loc": {
            "start": {
              "line": 9,
              "column": 0
            },
            "end": {
              "line": 9,
              "column": 112
            }
          },
          "range": [
            321,
            433
          ]
        },
        {
          "type": "CommentLine",
          "value": " mixin for geometric objects that can be highlighted",
          "start": 435,
          "end": 489,
          "loc": {
            "start": {
              "line": 11,
              "column": 0
            },
            "end": {
              "line": 11,
              "column": 54
            }
          },
          "range": [
            435,
            489
          ]
        }
      ],
      "trailingComments": [
        {
          "type": "CommentLine",
          "value": " prototype for all interact meshes",
          "start": 1927,
          "end": 1963,
          "loc": {
            "start": {
              "line": 45,
              "column": 0
            },
            "end": {
              "line": 45,
              "column": 36
            }
          },
          "range": [
            1927,
            1963
          ]
        }
      ]
    },
    {
      "type": "ClassDeclaration",
      "start": 1964,
      "end": 2084,
      "loc": {
        "start": {
          "line": 46,
          "column": 0
        },
        "end": {
          "line": 50,
          "column": 1
        }
      },
      "id": {
        "type": "Identifier",
        "start": 1970,
        "end": 1982,
        "loc": {
          "start": {
            "line": 46,
            "column": 6
          },
          "end": {
            "line": 46,
            "column": 18
          }
        },
        "name": "InteractMesh",
        "leadingComments": null
      },
      "superClass": {
        "type": "MemberExpression",
        "start": 1991,
        "end": 2001,
        "loc": {
          "start": {
            "line": 46,
            "column": 27
          },
          "end": {
            "line": 46,
            "column": 37
          }
        },
        "object": {
          "type": "Identifier",
          "start": 1991,
          "end": 1996,
          "loc": {
            "start": {
              "line": 46,
              "column": 27
            },
            "end": {
              "line": 46,
              "column": 32
            }
          },
          "name": "THREE"
        },
        "property": {
          "type": "Identifier",
          "start": 1997,
          "end": 2001,
          "loc": {
            "start": {
              "line": 46,
              "column": 33
            },
            "end": {
              "line": 46,
              "column": 37
            }
          },
          "name": "Mesh"
        },
        "computed": false
      },
      "body": {
        "type": "ClassBody",
        "start": 2002,
        "end": 2084,
        "loc": {
          "start": {
            "line": 46,
            "column": 38
          },
          "end": {
            "line": 50,
            "column": 1
          }
        },
        "body": [
          {
            "type": "MethodDefinition",
            "start": 2008,
            "end": 2082,
            "loc": {
              "start": {
                "line": 47,
                "column": 4
              },
              "end": {
                "line": 49,
                "column": 5
              }
            },
            "computed": false,
            "key": {
              "type": "Identifier",
              "start": 2008,
              "end": 2019,
              "loc": {
                "start": {
                  "line": 47,
                  "column": 4
                },
                "end": {
                  "line": 47,
                  "column": 15
                }
              },
              "name": "constructor"
            },
            "static": false,
            "kind": "constructor",
            "value": {
              "type": "FunctionExpression",
              "start": 2019,
              "end": 2082,
              "loc": {
                "start": {
                  "line": 47,
                  "column": 15
                },
                "end": {
                  "line": 49,
                  "column": 5
                }
              },
              "id": null,
              "generator": false,
              "expression": false,
              "async": false,
              "params": [
                {
                  "type": "Identifier",
                  "start": 2020,
                  "end": 2028,
                  "loc": {
                    "start": {
                      "line": 47,
                      "column": 16
                    },
                    "end": {
                      "line": 47,
                      "column": 24
                    }
                  },
                  "name": "geometry"
                },
                {
                  "type": "Identifier",
                  "start": 2030,
                  "end": 2038,
                  "loc": {
                    "start": {
                      "line": 47,
                      "column": 26
                    },
                    "end": {
                      "line": 47,
                      "column": 34
                    }
                  },
                  "name": "material"
                }
              ],
              "body": {
                "type": "BlockStatement",
                "start": 2040,
                "end": 2082,
                "loc": {
                  "start": {
                    "line": 47,
                    "column": 36
                  },
                  "end": {
                    "line": 49,
                    "column": 5
                  }
                },
                "body": [
                  {
                    "type": "ExpressionStatement",
                    "start": 2050,
                    "end": 2076,
                    "loc": {
                      "start": {
                        "line": 48,
                        "column": 8
                      },
                      "end": {
                        "line": 48,
                        "column": 34
                      }
                    },
                    "expression": {
                      "type": "CallExpression",
                      "start": 2050,
                      "end": 2075,
                      "loc": {
                        "start": {
                          "line": 48,
                          "column": 8
                        },
                        "end": {
                          "line": 48,
                          "column": 33
                        }
                      },
                      "callee": {
                        "type": "Super",
                        "start": 2050,
                        "end": 2055,
                        "loc": {
                          "start": {
                            "line": 48,
                            "column": 8
                          },
                          "end": {
                            "line": 48,
                            "column": 13
                          }
                        }
                      },
                      "arguments": [
                        {
                          "type": "Identifier",
                          "start": 2056,
                          "end": 2064,
                          "loc": {
                            "start": {
                              "line": 48,
                              "column": 14
                            },
                            "end": {
                              "line": 48,
                              "column": 22
                            }
                          },
                          "name": "geometry"
                        },
                        {
                          "type": "Identifier",
                          "start": 2066,
                          "end": 2074,
                          "loc": {
                            "start": {
                              "line": 48,
                              "column": 24
                            },
                            "end": {
                              "line": 48,
                              "column": 32
                            }
                          },
                          "name": "material"
                        }
                      ]
                    }
                  }
                ]
              }
            }
          }
        ]
      },
      "leadingComments": [
        {
          "type": "CommentLine",
          "value": " prototype for all interact meshes",
          "start": 1927,
          "end": 1963,
          "loc": {
            "start": {
              "line": 45,
              "column": 0
            },
            "end": {
              "line": 45,
              "column": 36
            }
          },
          "range": [
            1927,
            1963
          ]
        }
      ]
    },
    {
      "type": "ExpressionStatement",
      "start": 2085,
      "end": 2132,
      "loc": {
        "start": {
          "line": 51,
          "column": 0
        },
        "end": {
          "line": 51,
          "column": 47
        }
      },
      "expression": {
        "type": "CallExpression",
        "start": 2085,
        "end": 2131,
        "loc": {
          "start": {
            "line": 51,
            "column": 0
          },
          "end": {
            "line": 51,
            "column": 46
          }
        },
        "callee": {
          "type": "MemberExpression",
          "start": 2085,
          "end": 2107,
          "loc": {
            "start": {
              "line": 51,
              "column": 0
            },
            "end": {
              "line": 51,
              "column": 22
            }
          },
          "object": {
            "type": "Identifier",
            "start": 2085,
            "end": 2102,
            "loc": {
              "start": {
                "line": 51,
                "column": 0
              },
              "end": {
                "line": 51,
                "column": 17
              }
            },
            "name": "meshHighlightable"
          },
          "property": {
            "type": "Identifier",
            "start": 2103,
            "end": 2107,
            "loc": {
              "start": {
                "line": 51,
                "column": 18
              },
              "end": {
                "line": 51,
                "column": 22
              }
            },
            "name": "call"
          },
          "computed": false
        },
        "arguments": [
          {
            "type": "MemberExpression",
            "start": 2108,
            "end": 2130,
            "loc": {
              "start": {
                "line": 51,
                "column": 23
              },
              "end": {
                "line": 51,
                "column": 45
              }
            },
            "object": {
              "type": "Identifier",
              "start": 2108,
              "end": 2120,
              "loc": {
                "start": {
                  "line": 51,
                  "column": 23
                },
                "end": {
                  "line": 51,
                  "column": 35
                }
              },
              "name": "InteractMesh"
            },
            "property": {
              "type": "Identifier",
              "start": 2121,
              "end": 2130,
              "loc": {
                "start": {
                  "line": 51,
                  "column": 36
                },
                "end": {
                  "line": 51,
                  "column": 45
                }
              },
              "name": "prototype"
            },
            "computed": false
          }
        ]
      },
      "trailingComments": [
        {
          "type": "CommentLine",
          "value": "=============================== Sketch.GeometricObject =================================",
          "start": 2134,
          "end": 2224,
          "loc": {
            "start": {
              "line": 53,
              "column": 0
            },
            "end": {
              "line": 53,
              "column": 90
            }
          },
          "range": [
            2134,
            2224
          ]
        },
        {
          "type": "Block",
          "value": "*\n * Each geometric objects has several update functions, here they are:\n * 1. updateGeometry(movedPoint)\n *   must be called after any child point is changed (i.e. line's endpoint or arc's center was moved)\n *   recalculates inner parameters of the geometry (if present, i.e. center, angles)\n * 2. updateSizes(owningView)\n *   must be called after camera or object has changed, and after any geometrical changes\n *   recalculates any required sizing data (i.e. `width` value)\n *   automatically generated by mixinPixelSizedGeometry\n * 3. updateVisualization()\n *   must be called after anything changes, which may influence visible representation of object\n *   updates or rebuilds a THREE.Mesh which visibly represent the object\n * Note that each update function depends on the data obtained from the previous steps.\n *\n * Here is general advice of how to call update functions:\n *   - call updateGeometry directly and only inside controls handlers (when smth is edited)\n *   - do not call other updates directly, just register each object with Sketcher.registerVisualization\n ",
          "start": 2225,
          "end": 3308,
          "loc": {
            "start": {
              "line": 54,
              "column": 0
            },
            "end": {
              "line": 71,
              "column": 3
            }
          },
          "range": [
            2225,
            3308
          ]
        }
      ]
    },
    {
      "type": "ExportNamedDeclaration",
      "start": 3309,
      "end": 3935,
      "loc": {
        "start": {
          "line": 72,
          "column": 0
        },
        "end": {
          "line": 89,
          "column": 1
        }
      },
      "declaration": {
        "type": "ClassDeclaration",
        "start": 3316,
        "end": 3935,
        "loc": {
          "start": {
            "line": 72,
            "column": 7
          },
          "end": {
            "line": 89,
            "column": 1
          }
        },
        "id": {
          "type": "Identifier",
          "start": 3322,
          "end": 3337,
          "loc": {
            "start": {
              "line": 72,
              "column": 13
            },
            "end": {
              "line": 72,
              "column": 28
            }
          },
          "name": "GeometricObject",
          "leadingComments": null
        },
        "superClass": {
          "type": "Identifier",
          "start": 3346,
          "end": 3360,
          "loc": {
            "start": {
              "line": 72,
              "column": 37
            },
            "end": {
              "line": 72,
              "column": 51
            }
          },
          "name": "ClassCadObject"
        },
        "body": {
          "type": "ClassBody",
          "start": 3361,
          "end": 3935,
          "loc": {
            "start": {
              "line": 72,
              "column": 52
            },
            "end": {
              "line": 89,
              "column": 1
            }
          },
          "body": [
            {
              "type": "MethodDefinition",
              "start": 3367,
              "end": 3870,
              "loc": {
                "start": {
                  "line": 73,
                  "column": 4
                },
                "end": {
                  "line": 84,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 3367,
                "end": 3378,
                "loc": {
                  "start": {
                    "line": 73,
                    "column": 4
                  },
                  "end": {
                    "line": 73,
                    "column": 15
                  }
                },
                "name": "constructor"
              },
              "static": false,
              "kind": "constructor",
              "value": {
                "type": "FunctionExpression",
                "start": 3378,
                "end": 3870,
                "loc": {
                  "start": {
                    "line": 73,
                    "column": 15
                  },
                  "end": {
                    "line": 84,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 3381,
                  "end": 3870,
                  "loc": {
                    "start": {
                      "line": 73,
                      "column": 18
                    },
                    "end": {
                      "line": 84,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 3391,
                      "end": 3399,
                      "loc": {
                        "start": {
                          "line": 74,
                          "column": 8
                        },
                        "end": {
                          "line": 74,
                          "column": 16
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 3391,
                        "end": 3398,
                        "loc": {
                          "start": {
                            "line": 74,
                            "column": 8
                          },
                          "end": {
                            "line": 74,
                            "column": 15
                          }
                        },
                        "callee": {
                          "type": "Super",
                          "start": 3391,
                          "end": 3396,
                          "loc": {
                            "start": {
                              "line": 74,
                              "column": 8
                            },
                            "end": {
                              "line": 74,
                              "column": 13
                            }
                          }
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3408,
                      "end": 3468,
                      "loc": {
                        "start": {
                          "line": 75,
                          "column": 8
                        },
                        "end": {
                          "line": 75,
                          "column": 68
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 3408,
                        "end": 3467,
                        "loc": {
                          "start": {
                            "line": 75,
                            "column": 8
                          },
                          "end": {
                            "line": 75,
                            "column": 67
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 3408,
                          "end": 3445,
                          "loc": {
                            "start": {
                              "line": 75,
                              "column": 8
                            },
                            "end": {
                              "line": 75,
                              "column": 45
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 3408,
                            "end": 3440,
                            "loc": {
                              "start": {
                                "line": 75,
                                "column": 8
                              },
                              "end": {
                                "line": 75,
                                "column": 40
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 3408,
                              "end": 3416,
                              "loc": {
                                "start": {
                                  "line": 75,
                                  "column": 8
                                },
                                "end": {
                                  "line": 75,
                                  "column": 16
                                }
                              },
                              "name": "Sketcher"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3417,
                              "end": 3440,
                              "loc": {
                                "start": {
                                  "line": 75,
                                  "column": 17
                                },
                                "end": {
                                  "line": 75,
                                  "column": 40
                                }
                              },
                              "name": "mixinPixelSizedGeometry"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3441,
                            "end": 3445,
                            "loc": {
                              "start": {
                                "line": 75,
                                "column": 41
                              },
                              "end": {
                                "line": 75,
                                "column": 45
                              }
                            },
                            "name": "call"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ThisExpression",
                            "start": 3446,
                            "end": 3450,
                            "loc": {
                              "start": {
                                "line": 75,
                                "column": 46
                              },
                              "end": {
                                "line": 75,
                                "column": 50
                              }
                            }
                          },
                          {
                            "type": "MemberExpression",
                            "start": 3452,
                            "end": 3466,
                            "loc": {
                              "start": {
                                "line": 75,
                                "column": 52
                              },
                              "end": {
                                "line": 75,
                                "column": 66
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 3452,
                              "end": 3456,
                              "loc": {
                                "start": {
                                  "line": 75,
                                  "column": 52
                                },
                                "end": {
                                  "line": 75,
                                  "column": 56
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3457,
                              "end": 3466,
                              "loc": {
                                "start": {
                                  "line": 75,
                                  "column": 57
                                },
                                "end": {
                                  "line": 75,
                                  "column": 66
                                }
                              },
                              "name": "thickness"
                            },
                            "computed": false
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3478,
                      "end": 3813,
                      "loc": {
                        "start": {
                          "line": 77,
                          "column": 8
                        },
                        "end": {
                          "line": 82,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3478,
                        "end": 3812,
                        "loc": {
                          "start": {
                            "line": 77,
                            "column": 8
                          },
                          "end": {
                            "line": 82,
                            "column": 10
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3478,
                          "end": 3503,
                          "loc": {
                            "start": {
                              "line": 77,
                              "column": 8
                            },
                            "end": {
                              "line": 77,
                              "column": 33
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 3478,
                            "end": 3482,
                            "loc": {
                              "start": {
                                "line": 77,
                                "column": 8
                              },
                              "end": {
                                "line": 77,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3483,
                            "end": 3503,
                            "loc": {
                              "start": {
                                "line": 77,
                                "column": 13
                              },
                              "end": {
                                "line": 77,
                                "column": 33
                              }
                            },
                            "name": "constraintsSubstrate"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 3507,
                          "end": 3812,
                          "loc": {
                            "start": {
                              "line": 77,
                              "column": 37
                            },
                            "end": {
                              "line": 82,
                              "column": 10
                            }
                          },
                          "callee": {
                            "type": "Identifier",
                            "start": 3511,
                            "end": 3523,
                            "loc": {
                              "start": {
                                "line": 77,
                                "column": 41
                              },
                              "end": {
                                "line": 77,
                                "column": 53
                              }
                            },
                            "name": "InteractMesh"
                          },
                          "arguments": [
                            {
                              "type": "NewExpression",
                              "start": 3524,
                              "end": 3554,
                              "loc": {
                                "start": {
                                  "line": 77,
                                  "column": 54
                                },
                                "end": {
                                  "line": 77,
                                  "column": 84
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 3528,
                                "end": 3545,
                                "loc": {
                                  "start": {
                                    "line": 77,
                                    "column": 58
                                  },
                                  "end": {
                                    "line": 77,
                                    "column": 75
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 3528,
                                  "end": 3533,
                                  "loc": {
                                    "start": {
                                      "line": 77,
                                      "column": 58
                                    },
                                    "end": {
                                      "line": 77,
                                      "column": 63
                                    }
                                  },
                                  "name": "THREE"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3534,
                                  "end": 3545,
                                  "loc": {
                                    "start": {
                                      "line": 77,
                                      "column": 64
                                    },
                                    "end": {
                                      "line": 77,
                                      "column": 75
                                    }
                                  },
                                  "name": "BoxGeometry"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 3546,
                                  "end": 3547,
                                  "loc": {
                                    "start": {
                                      "line": 77,
                                      "column": 76
                                    },
                                    "end": {
                                      "line": 77,
                                      "column": 77
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                },
                                {
                                  "type": "Literal",
                                  "start": 3549,
                                  "end": 3550,
                                  "loc": {
                                    "start": {
                                      "line": 77,
                                      "column": 79
                                    },
                                    "end": {
                                      "line": 77,
                                      "column": 80
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                },
                                {
                                  "type": "Literal",
                                  "start": 3552,
                                  "end": 3553,
                                  "loc": {
                                    "start": {
                                      "line": 77,
                                      "column": 82
                                    },
                                    "end": {
                                      "line": 77,
                                      "column": 83
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                }
                              ]
                            },
                            {
                              "type": "NewExpression",
                              "start": 3556,
                              "end": 3811,
                              "loc": {
                                "start": {
                                  "line": 77,
                                  "column": 86
                                },
                                "end": {
                                  "line": 82,
                                  "column": 9
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 3560,
                                "end": 3583,
                                "loc": {
                                  "start": {
                                    "line": 77,
                                    "column": 90
                                  },
                                  "end": {
                                    "line": 77,
                                    "column": 113
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 3560,
                                  "end": 3565,
                                  "loc": {
                                    "start": {
                                      "line": 77,
                                      "column": 90
                                    },
                                    "end": {
                                      "line": 77,
                                      "column": 95
                                    }
                                  },
                                  "name": "THREE"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3566,
                                  "end": 3583,
                                  "loc": {
                                    "start": {
                                      "line": 77,
                                      "column": 96
                                    },
                                    "end": {
                                      "line": 77,
                                      "column": 113
                                    }
                                  },
                                  "name": "MeshBasicMaterial"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ObjectExpression",
                                  "start": 3597,
                                  "end": 3801,
                                  "loc": {
                                    "start": {
                                      "line": 78,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 81,
                                      "column": 13
                                    }
                                  },
                                  "properties": [
                                    {
                                      "type": "Property",
                                      "start": 3598,
                                      "end": 3626,
                                      "loc": {
                                        "start": {
                                          "line": 78,
                                          "column": 13
                                        },
                                        "end": {
                                          "line": 78,
                                          "column": 41
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 3598,
                                        "end": 3603,
                                        "loc": {
                                          "start": {
                                            "line": 78,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 78,
                                            "column": 18
                                          }
                                        },
                                        "name": "color"
                                      },
                                      "value": {
                                        "type": "CallExpression",
                                        "start": 3605,
                                        "end": 3626,
                                        "loc": {
                                          "start": {
                                            "line": 78,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 78,
                                            "column": 41
                                          }
                                        },
                                        "callee": {
                                          "type": "Identifier",
                                          "start": 3605,
                                          "end": 3613,
                                          "loc": {
                                            "start": {
                                              "line": 78,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 78,
                                              "column": 28
                                            }
                                          },
                                          "name": "getColor"
                                        },
                                        "arguments": [
                                          {
                                            "type": "ThisExpression",
                                            "start": 3614,
                                            "end": 3618,
                                            "loc": {
                                              "start": {
                                                "line": 78,
                                                "column": 29
                                              },
                                              "end": {
                                                "line": 78,
                                                "column": 33
                                              }
                                            }
                                          },
                                          {
                                            "type": "Literal",
                                            "start": 3620,
                                            "end": 3625,
                                            "loc": {
                                              "start": {
                                                "line": 78,
                                                "column": 35
                                              },
                                              "end": {
                                                "line": 78,
                                                "column": 40
                                              }
                                            },
                                            "value": false,
                                            "rawValue": false,
                                            "raw": "false"
                                          }
                                        ]
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 3628,
                                      "end": 3650,
                                      "loc": {
                                        "start": {
                                          "line": 78,
                                          "column": 43
                                        },
                                        "end": {
                                          "line": 78,
                                          "column": 65
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 3628,
                                        "end": 3632,
                                        "loc": {
                                          "start": {
                                            "line": 78,
                                            "column": 43
                                          },
                                          "end": {
                                            "line": 78,
                                            "column": 47
                                          }
                                        },
                                        "name": "side"
                                      },
                                      "value": {
                                        "type": "MemberExpression",
                                        "start": 3634,
                                        "end": 3650,
                                        "loc": {
                                          "start": {
                                            "line": 78,
                                            "column": 49
                                          },
                                          "end": {
                                            "line": 78,
                                            "column": 65
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 3634,
                                          "end": 3639,
                                          "loc": {
                                            "start": {
                                              "line": 78,
                                              "column": 49
                                            },
                                            "end": {
                                              "line": 78,
                                              "column": 54
                                            }
                                          },
                                          "name": "THREE"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 3640,
                                          "end": 3650,
                                          "loc": {
                                            "start": {
                                              "line": 78,
                                              "column": 55
                                            },
                                            "end": {
                                              "line": 78,
                                              "column": 65
                                            }
                                          },
                                          "name": "DoubleSide"
                                        },
                                        "computed": false
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 3668,
                                      "end": 3687,
                                      "loc": {
                                        "start": {
                                          "line": 79,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 79,
                                          "column": 35
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 3668,
                                        "end": 3681,
                                        "loc": {
                                          "start": {
                                            "line": 79,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 79,
                                            "column": 29
                                          }
                                        },
                                        "name": "polygonOffset"
                                      },
                                      "value": {
                                        "type": "Literal",
                                        "start": 3683,
                                        "end": 3687,
                                        "loc": {
                                          "start": {
                                            "line": 79,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 79,
                                            "column": 35
                                          }
                                        },
                                        "value": true,
                                        "rawValue": true,
                                        "raw": "true"
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 3689,
                                      "end": 3712,
                                      "loc": {
                                        "start": {
                                          "line": 79,
                                          "column": 37
                                        },
                                        "end": {
                                          "line": 79,
                                          "column": 60
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 3689,
                                        "end": 3708,
                                        "loc": {
                                          "start": {
                                            "line": 79,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 79,
                                            "column": 56
                                          }
                                        },
                                        "name": "polygonOffsetFactor"
                                      },
                                      "value": {
                                        "type": "UnaryExpression",
                                        "start": 3710,
                                        "end": 3712,
                                        "loc": {
                                          "start": {
                                            "line": 79,
                                            "column": 58
                                          },
                                          "end": {
                                            "line": 79,
                                            "column": 60
                                          }
                                        },
                                        "operator": "-",
                                        "prefix": true,
                                        "argument": {
                                          "type": "Literal",
                                          "start": 3711,
                                          "end": 3712,
                                          "loc": {
                                            "start": {
                                              "line": 79,
                                              "column": 59
                                            },
                                            "end": {
                                              "line": 79,
                                              "column": 60
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        }
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 3714,
                                      "end": 3738,
                                      "loc": {
                                        "start": {
                                          "line": 79,
                                          "column": 62
                                        },
                                        "end": {
                                          "line": 79,
                                          "column": 86
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 3714,
                                        "end": 3732,
                                        "loc": {
                                          "start": {
                                            "line": 79,
                                            "column": 62
                                          },
                                          "end": {
                                            "line": 79,
                                            "column": 80
                                          }
                                        },
                                        "name": "polygonOffsetUnits"
                                      },
                                      "value": {
                                        "type": "UnaryExpression",
                                        "start": 3735,
                                        "end": 3738,
                                        "loc": {
                                          "start": {
                                            "line": 79,
                                            "column": 83
                                          },
                                          "end": {
                                            "line": 79,
                                            "column": 86
                                          }
                                        },
                                        "operator": "-",
                                        "prefix": true,
                                        "argument": {
                                          "type": "Literal",
                                          "start": 3736,
                                          "end": 3738,
                                          "loc": {
                                            "start": {
                                              "line": 79,
                                              "column": 84
                                            },
                                            "end": {
                                              "line": 79,
                                              "column": 86
                                            }
                                          },
                                          "value": 10,
                                          "rawValue": 10,
                                          "raw": "10"
                                        }
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 3756,
                                      "end": 3773,
                                      "loc": {
                                        "start": {
                                          "line": 80,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 80,
                                          "column": 33
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 3756,
                                        "end": 3767,
                                        "loc": {
                                          "start": {
                                            "line": 80,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 80,
                                            "column": 27
                                          }
                                        },
                                        "name": "transparent"
                                      },
                                      "value": {
                                        "type": "Literal",
                                        "start": 3769,
                                        "end": 3773,
                                        "loc": {
                                          "start": {
                                            "line": 80,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 80,
                                            "column": 33
                                          }
                                        },
                                        "value": true,
                                        "rawValue": true,
                                        "raw": "true"
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 3775,
                                      "end": 3787,
                                      "loc": {
                                        "start": {
                                          "line": 80,
                                          "column": 35
                                        },
                                        "end": {
                                          "line": 80,
                                          "column": 47
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 3775,
                                        "end": 3782,
                                        "loc": {
                                          "start": {
                                            "line": 80,
                                            "column": 35
                                          },
                                          "end": {
                                            "line": 80,
                                            "column": 42
                                          }
                                        },
                                        "name": "opacity"
                                      },
                                      "value": {
                                        "type": "Literal",
                                        "start": 3784,
                                        "end": 3787,
                                        "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": 3822,
                      "end": 3864,
                      "loc": {
                        "start": {
                          "line": 83,
                          "column": 8
                        },
                        "end": {
                          "line": 83,
                          "column": 50
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3822,
                        "end": 3863,
                        "loc": {
                          "start": {
                            "line": 83,
                            "column": 8
                          },
                          "end": {
                            "line": 83,
                            "column": 49
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3822,
                          "end": 3855,
                          "loc": {
                            "start": {
                              "line": 83,
                              "column": 8
                            },
                            "end": {
                              "line": 83,
                              "column": 41
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 3822,
                            "end": 3847,
                            "loc": {
                              "start": {
                                "line": 83,
                                "column": 8
                              },
                              "end": {
                                "line": 83,
                                "column": 33
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 3822,
                              "end": 3826,
                              "loc": {
                                "start": {
                                  "line": 83,
                                  "column": 8
                                },
                                "end": {
                                  "line": 83,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3827,
                              "end": 3847,
                              "loc": {
                                "start": {
                                  "line": 83,
                                  "column": 13
                                },
                                "end": {
                                  "line": 83,
                                  "column": 33
                                }
                              },
                              "name": "constraintsSubstrate"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3848,
                            "end": 3855,
                            "loc": {
                              "start": {
                                "line": 83,
                                "column": 34
                              },
                              "end": {
                                "line": 83,
                                "column": 41
                              }
                            },
                            "name": "visible"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 3858,
                          "end": 3863,
                          "loc": {
                            "start": {
                              "line": 83,
                              "column": 44
                            },
                            "end": {
                              "line": 83,
                              "column": 49
                            }
                          },
                          "value": false,
                          "rawValue": false,
                          "raw": "false"
                        }
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 3876,
              "end": 3933,
              "loc": {
                "start": {
                  "line": 86,
                  "column": 4
                },
                "end": {
                  "line": 88,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 3876,
                "end": 3892,
                "loc": {
                  "start": {
                    "line": 86,
                    "column": 4
                  },
                  "end": {
                    "line": 86,
                    "column": 20
                  }
                },
                "name": "finishedUpdating"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 3892,
                "end": 3933,
                "loc": {
                  "start": {
                    "line": 86,
                    "column": 20
                  },
                  "end": {
                    "line": 88,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 3895,
                  "end": 3933,
                  "loc": {
                    "start": {
                      "line": 86,
                      "column": 23
                    },
                    "end": {
                      "line": 88,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 3905,
                      "end": 3927,
                      "loc": {
                        "start": {
                          "line": 87,
                          "column": 8
                        },
                        "end": {
                          "line": 87,
                          "column": 30
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 3905,
                        "end": 3926,
                        "loc": {
                          "start": {
                            "line": 87,
                            "column": 8
                          },
                          "end": {
                            "line": 87,
                            "column": 29
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 3905,
                          "end": 3924,
                          "loc": {
                            "start": {
                              "line": 87,
                              "column": 8
                            },
                            "end": {
                              "line": 87,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 3905,
                            "end": 3909,
                            "loc": {
                              "start": {
                                "line": 87,
                                "column": 8
                              },
                              "end": {
                                "line": 87,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3910,
                            "end": 3924,
                            "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": 2134,
            "end": 2224,
            "loc": {
              "start": {
                "line": 53,
                "column": 0
              },
              "end": {
                "line": 53,
                "column": 90
              }
            },
            "range": [
              2134,
              2224
            ]
          },
          {
            "type": "Block",
            "value": "*\n * Each geometric objects has several update functions, here they are:\n * 1. updateGeometry(movedPoint)\n *   must be called after any child point is changed (i.e. line's endpoint or arc's center was moved)\n *   recalculates inner parameters of the geometry (if present, i.e. center, angles)\n * 2. updateSizes(owningView)\n *   must be called after camera or object has changed, and after any geometrical changes\n *   recalculates any required sizing data (i.e. `width` value)\n *   automatically generated by mixinPixelSizedGeometry\n * 3. updateVisualization()\n *   must be called after anything changes, which may influence visible representation of object\n *   updates or rebuilds a THREE.Mesh which visibly represent the object\n * Note that each update function depends on the data obtained from the previous steps.\n *\n * Here is general advice of how to call update functions:\n *   - call updateGeometry directly and only inside controls handlers (when smth is edited)\n *   - do not call other updates directly, just register each object with Sketcher.registerVisualization\n ",
            "start": 2225,
            "end": 3308,
            "loc": {
              "start": {
                "line": 54,
                "column": 0
              },
              "end": {
                "line": 71,
                "column": 3
              }
            },
            "range": [
              2225,
              3308
            ]
          }
        ],
        "trailingComments": [
          {
            "type": "CommentLine",
            "value": "================================ Sketch.Point =========================================",
            "start": 3937,
            "end": 4026,
            "loc": {
              "start": {
                "line": 91,
                "column": 0
              },
              "end": {
                "line": 91,
                "column": 89
              }
            },
            "range": [
              3937,
              4026
            ]
          }
        ]
      },
      "specifiers": [],
      "source": null,
      "leadingComments": [
        {
          "type": "CommentLine",
          "value": "=============================== Sketch.GeometricObject =================================",
          "start": 2134,
          "end": 2224,
          "loc": {
            "start": {
              "line": 53,
              "column": 0
            },
            "end": {
              "line": 53,
              "column": 90
            }
          },
          "range": [
            2134,
            2224
          ]
        },
        {
          "type": "Block",
          "value": "*\n * Each geometric objects has several update functions, here they are:\n * 1. updateGeometry(movedPoint)\n *   must be called after any child point is changed (i.e. line's endpoint or arc's center was moved)\n *   recalculates inner parameters of the geometry (if present, i.e. center, angles)\n * 2. updateSizes(owningView)\n *   must be called after camera or object has changed, and after any geometrical changes\n *   recalculates any required sizing data (i.e. `width` value)\n *   automatically generated by mixinPixelSizedGeometry\n * 3. updateVisualization()\n *   must be called after anything changes, which may influence visible representation of object\n *   updates or rebuilds a THREE.Mesh which visibly represent the object\n * Note that each update function depends on the data obtained from the previous steps.\n *\n * Here is general advice of how to call update functions:\n *   - call updateGeometry directly and only inside controls handlers (when smth is edited)\n *   - do not call other updates directly, just register each object with Sketcher.registerVisualization\n ",
          "start": 2225,
          "end": 3308,
          "loc": {
            "start": {
              "line": 54,
              "column": 0
            },
            "end": {
              "line": 71,
              "column": 3
            }
          },
          "range": [
            2225,
            3308
          ]
        }
      ],
      "trailingComments": [
        {
          "type": "CommentLine",
          "value": "================================ Sketch.Point =========================================",
          "start": 3937,
          "end": 4026,
          "loc": {
            "start": {
              "line": 91,
              "column": 0
            },
            "end": {
              "line": 91,
              "column": 89
            }
          },
          "range": [
            3937,
            4026
          ]
        }
      ]
    },
    {
      "type": "ExportNamedDeclaration",
      "start": 4027,
      "end": 6601,
      "loc": {
        "start": {
          "line": 92,
          "column": 0
        },
        "end": {
          "line": 182,
          "column": 1
        }
      },
      "declaration": {
        "type": "ClassDeclaration",
        "start": 4034,
        "end": 6601,
        "loc": {
          "start": {
            "line": 92,
            "column": 7
          },
          "end": {
            "line": 182,
            "column": 1
          }
        },
        "id": {
          "type": "Identifier",
          "start": 4040,
          "end": 4045,
          "loc": {
            "start": {
              "line": 92,
              "column": 13
            },
            "end": {
              "line": 92,
              "column": 18
            }
          },
          "name": "Point",
          "leadingComments": null
        },
        "superClass": {
          "type": "Identifier",
          "start": 4054,
          "end": 4069,
          "loc": {
            "start": {
              "line": 92,
              "column": 27
            },
            "end": {
              "line": 92,
              "column": 42
            }
          },
          "name": "GeometricObject"
        },
        "body": {
          "type": "ClassBody",
          "start": 4070,
          "end": 6601,
          "loc": {
            "start": {
              "line": 92,
              "column": 43
            },
            "end": {
              "line": 182,
              "column": 1
            }
          },
          "body": [
            {
              "type": "MethodDefinition",
              "start": 4076,
              "end": 4589,
              "loc": {
                "start": {
                  "line": 93,
                  "column": 4
                },
                "end": {
                  "line": 105,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 4076,
                "end": 4087,
                "loc": {
                  "start": {
                    "line": 93,
                    "column": 4
                  },
                  "end": {
                    "line": 93,
                    "column": 15
                  }
                },
                "name": "constructor"
              },
              "static": false,
              "kind": "constructor",
              "value": {
                "type": "FunctionExpression",
                "start": 4087,
                "end": 4589,
                "loc": {
                  "start": {
                    "line": 93,
                    "column": 15
                  },
                  "end": {
                    "line": 105,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 4090,
                  "end": 4589,
                  "loc": {
                    "start": {
                      "line": 93,
                      "column": 18
                    },
                    "end": {
                      "line": 105,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 4100,
                      "end": 4108,
                      "loc": {
                        "start": {
                          "line": 94,
                          "column": 8
                        },
                        "end": {
                          "line": 94,
                          "column": 16
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 4100,
                        "end": 4107,
                        "loc": {
                          "start": {
                            "line": 94,
                            "column": 8
                          },
                          "end": {
                            "line": 94,
                            "column": 15
                          }
                        },
                        "callee": {
                          "type": "Super",
                          "start": 4100,
                          "end": 4105,
                          "loc": {
                            "start": {
                              "line": 94,
                              "column": 8
                            },
                            "end": {
                              "line": 94,
                              "column": 13
                            }
                          }
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 4117,
                      "end": 4137,
                      "loc": {
                        "start": {
                          "line": 95,
                          "column": 8
                        },
                        "end": {
                          "line": 95,
                          "column": 28
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 4117,
                        "end": 4136,
                        "loc": {
                          "start": {
                            "line": 95,
                            "column": 8
                          },
                          "end": {
                            "line": 95,
                            "column": 27
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 4117,
                          "end": 4126,
                          "loc": {
                            "start": {
                              "line": 95,
                              "column": 8
                            },
                            "end": {
                              "line": 95,
                              "column": 17
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 4117,
                            "end": 4121,
                            "loc": {
                              "start": {
                                "line": 95,
                                "column": 8
                              },
                              "end": {
                                "line": 95,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4122,
                            "end": 4126,
                            "loc": {
                              "start": {
                                "line": 95,
                                "column": 13
                              },
                              "end": {
                                "line": 95,
                                "column": 17
                              }
                            },
                            "name": "type"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 4129,
                          "end": 4136,
                          "loc": {
                            "start": {
                              "line": 95,
                              "column": 20
                            },
                            "end": {
                              "line": 95,
                              "column": 27
                            }
                          },
                          "value": "Point",
                          "rawValue": "Point",
                          "raw": "'Point'"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 4147,
                      "end": 4419,
                      "loc": {
                        "start": {
                          "line": 97,
                          "column": 8
                        },
                        "end": {
                          "line": 101,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 4147,
                        "end": 4418,
                        "loc": {
                          "start": {
                            "line": 97,
                            "column": 8
                          },
                          "end": {
                            "line": 101,
                            "column": 10
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 4147,
                          "end": 4156,
                          "loc": {
                            "start": {
                              "line": 97,
                              "column": 8
                            },
                            "end": {
                              "line": 97,
                              "column": 17
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 4147,
                            "end": 4151,
                            "loc": {
                              "start": {
                                "line": 97,
                                "column": 8
                              },
                              "end": {
                                "line": 97,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4152,
                            "end": 4156,
                            "loc": {
                              "start": {
                                "line": 97,
                                "column": 13
                              },
                              "end": {
                                "line": 97,
                                "column": 17
                              }
                            },
                            "name": "mesh"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 4159,
                          "end": 4418,
                          "loc": {
                            "start": {
                              "line": 97,
                              "column": 20
                            },
                            "end": {
                              "line": 101,
                              "column": 10
                            }
                          },
                          "callee": {
                            "type": "Identifier",
                            "start": 4163,
                            "end": 4175,
                            "loc": {
                              "start": {
                                "line": 97,
                                "column": 24
                              },
                              "end": {
                                "line": 97,
                                "column": 36
                              }
                            },
                            "name": "InteractMesh"
                          },
                          "arguments": [
                            {
                              "type": "NewExpression",
                              "start": 4176,
                              "end": 4209,
                              "loc": {
                                "start": {
                                  "line": 97,
                                  "column": 37
                                },
                                "end": {
                                  "line": 97,
                                  "column": 70
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 4180,
                                "end": 4200,
                                "loc": {
                                  "start": {
                                    "line": 97,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 97,
                                    "column": 61
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 4180,
                                  "end": 4185,
                                  "loc": {
                                    "start": {
                                      "line": 97,
                                      "column": 41
                                    },
                                    "end": {
                                      "line": 97,
                                      "column": 46
                                    }
                                  },
                                  "name": "THREE"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 4186,
                                  "end": 4200,
                                  "loc": {
                                    "start": {
                                      "line": 97,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 97,
                                      "column": 61
                                    }
                                  },
                                  "name": "CircleGeometry"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 4201,
                                  "end": 4204,
                                  "loc": {
                                    "start": {
                                      "line": 97,
                                      "column": 62
                                    },
                                    "end": {
                                      "line": 97,
                                      "column": 65
                                    }
                                  },
                                  "value": 0.5,
                                  "rawValue": 0.5,
                                  "raw": "0.5"
                                },
                                {
                                  "type": "Literal",
                                  "start": 4206,
                                  "end": 4208,
                                  "loc": {
                                    "start": {
                                      "line": 97,
                                      "column": 67
                                    },
                                    "end": {
                                      "line": 97,
                                      "column": 69
                                    }
                                  },
                                  "value": 32,
                                  "rawValue": 32,
                                  "raw": "32"
                                }
                              ]
                            },
                            {
                              "type": "NewExpression",
                              "start": 4211,
                              "end": 4417,
                              "loc": {
                                "start": {
                                  "line": 97,
                                  "column": 72
                                },
                                "end": {
                                  "line": 101,
                                  "column": 9
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 4215,
                                "end": 4238,
                                "loc": {
                                  "start": {
                                    "line": 97,
                                    "column": 76
                                  },
                                  "end": {
                                    "line": 97,
                                    "column": 99
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 4215,
                                  "end": 4220,
                                  "loc": {
                                    "start": {
                                      "line": 97,
                                      "column": 76
                                    },
                                    "end": {
                                      "line": 97,
                                      "column": 81
                                    }
                                  },
                                  "name": "THREE"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 4221,
                                  "end": 4238,
                                  "loc": {
                                    "start": {
                                      "line": 97,
                                      "column": 82
                                    },
                                    "end": {
                                      "line": 97,
                                      "column": 99
                                    }
                                  },
                                  "name": "MeshBasicMaterial"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ObjectExpression",
                                  "start": 4252,
                                  "end": 4407,
                                  "loc": {
                                    "start": {
                                      "line": 98,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 100,
                                      "column": 13
                                    }
                                  },
                                  "properties": [
                                    {
                                      "type": "Property",
                                      "start": 4253,
                                      "end": 4281,
                                      "loc": {
                                        "start": {
                                          "line": 98,
                                          "column": 13
                                        },
                                        "end": {
                                          "line": 98,
                                          "column": 41
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 4253,
                                        "end": 4258,
                                        "loc": {
                                          "start": {
                                            "line": 98,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 98,
                                            "column": 18
                                          }
                                        },
                                        "name": "color"
                                      },
                                      "value": {
                                        "type": "CallExpression",
                                        "start": 4260,
                                        "end": 4281,
                                        "loc": {
                                          "start": {
                                            "line": 98,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 98,
                                            "column": 41
                                          }
                                        },
                                        "callee": {
                                          "type": "Identifier",
                                          "start": 4260,
                                          "end": 4268,
                                          "loc": {
                                            "start": {
                                              "line": 98,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 98,
                                              "column": 28
                                            }
                                          },
                                          "name": "getColor"
                                        },
                                        "arguments": [
                                          {
                                            "type": "ThisExpression",
                                            "start": 4269,
                                            "end": 4273,
                                            "loc": {
                                              "start": {
                                                "line": 98,
                                                "column": 29
                                              },
                                              "end": {
                                                "line": 98,
                                                "column": 33
                                              }
                                            }
                                          },
                                          {
                                            "type": "Literal",
                                            "start": 4275,
                                            "end": 4280,
                                            "loc": {
                                              "start": {
                                                "line": 98,
                                                "column": 35
                                              },
                                              "end": {
                                                "line": 98,
                                                "column": 40
                                              }
                                            },
                                            "value": false,
                                            "rawValue": false,
                                            "raw": "false"
                                          }
                                        ]
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 4283,
                                      "end": 4305,
                                      "loc": {
                                        "start": {
                                          "line": 98,
                                          "column": 43
                                        },
                                        "end": {
                                          "line": 98,
                                          "column": 65
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 4283,
                                        "end": 4287,
                                        "loc": {
                                          "start": {
                                            "line": 98,
                                            "column": 43
                                          },
                                          "end": {
                                            "line": 98,
                                            "column": 47
                                          }
                                        },
                                        "name": "side"
                                      },
                                      "value": {
                                        "type": "MemberExpression",
                                        "start": 4289,
                                        "end": 4305,
                                        "loc": {
                                          "start": {
                                            "line": 98,
                                            "column": 49
                                          },
                                          "end": {
                                            "line": 98,
                                            "column": 65
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 4289,
                                          "end": 4294,
                                          "loc": {
                                            "start": {
                                              "line": 98,
                                              "column": 49
                                            },
                                            "end": {
                                              "line": 98,
                                              "column": 54
                                            }
                                          },
                                          "name": "THREE"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 4295,
                                          "end": 4305,
                                          "loc": {
                                            "start": {
                                              "line": 98,
                                              "column": 55
                                            },
                                            "end": {
                                              "line": 98,
                                              "column": 65
                                            }
                                          },
                                          "name": "DoubleSide"
                                        },
                                        "computed": false
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 4323,
                                      "end": 4342,
                                      "loc": {
                                        "start": {
                                          "line": 99,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 99,
                                          "column": 35
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 4323,
                                        "end": 4336,
                                        "loc": {
                                          "start": {
                                            "line": 99,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 99,
                                            "column": 29
                                          }
                                        },
                                        "name": "polygonOffset"
                                      },
                                      "value": {
                                        "type": "Literal",
                                        "start": 4338,
                                        "end": 4342,
                                        "loc": {
                                          "start": {
                                            "line": 99,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 99,
                                            "column": 35
                                          }
                                        },
                                        "value": true,
                                        "rawValue": true,
                                        "raw": "true"
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 4344,
                                      "end": 4367,
                                      "loc": {
                                        "start": {
                                          "line": 99,
                                          "column": 37
                                        },
                                        "end": {
                                          "line": 99,
                                          "column": 60
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 4344,
                                        "end": 4363,
                                        "loc": {
                                          "start": {
                                            "line": 99,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 99,
                                            "column": 56
                                          }
                                        },
                                        "name": "polygonOffsetFactor"
                                      },
                                      "value": {
                                        "type": "UnaryExpression",
                                        "start": 4365,
                                        "end": 4367,
                                        "loc": {
                                          "start": {
                                            "line": 99,
                                            "column": 58
                                          },
                                          "end": {
                                            "line": 99,
                                            "column": 60
                                          }
                                        },
                                        "operator": "-",
                                        "prefix": true,
                                        "argument": {
                                          "type": "Literal",
                                          "start": 4366,
                                          "end": 4367,
                                          "loc": {
                                            "start": {
                                              "line": 99,
                                              "column": 59
                                            },
                                            "end": {
                                              "line": 99,
                                              "column": 60
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        }
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 4369,
                                      "end": 4393,
                                      "loc": {
                                        "start": {
                                          "line": 99,
                                          "column": 62
                                        },
                                        "end": {
                                          "line": 99,
                                          "column": 86
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 4369,
                                        "end": 4387,
                                        "loc": {
                                          "start": {
                                            "line": 99,
                                            "column": 62
                                          },
                                          "end": {
                                            "line": 99,
                                            "column": 80
                                          }
                                        },
                                        "name": "polygonOffsetUnits"
                                      },
                                      "value": {
                                        "type": "UnaryExpression",
                                        "start": 4390,
                                        "end": 4393,
                                        "loc": {
                                          "start": {
                                            "line": 99,
                                            "column": 83
                                          },
                                          "end": {
                                            "line": 99,
                                            "column": 86
                                          }
                                        },
                                        "operator": "-",
                                        "prefix": true,
                                        "argument": {
                                          "type": "Literal",
                                          "start": 4391,
                                          "end": 4393,
                                          "loc": {
                                            "start": {
                                              "line": 99,
                                              "column": 84
                                            },
                                            "end": {
                                              "line": 99,
                                              "column": 86
                                            }
                                          },
                                          "value": 10,
                                          "rawValue": 10,
                                          "raw": "10"
                                        }
                                      },
                                      "kind": "init"
                                    }
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 4428,
                      "end": 4454,
                      "loc": {
                        "start": {
                          "line": 102,
                          "column": 8
                        },
                        "end": {
                          "line": 102,
                          "column": 34
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 4428,
                        "end": 4453,
                        "loc": {
                          "start": {
                            "line": 102,
                            "column": 8
                          },
                          "end": {
                            "line": 102,
                            "column": 33
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 4428,
                          "end": 4441,
                          "loc": {
                            "start": {
                              "line": 102,
                              "column": 8
                            },
                            "end": {
                              "line": 102,
                              "column": 21
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 4428,
                            "end": 4432,
                            "loc": {
                              "start": {
                                "line": 102,
                                "column": 8
                              },
                              "end": {
                                "line": 102,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4433,
                            "end": 4441,
                            "loc": {
                              "start": {
                                "line": 102,
                                "column": 13
                              },
                              "end": {
                                "line": 102,
                                "column": 21
                              }
                            },
                            "name": "interact"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 4444,
                          "end": 4453,
                          "loc": {
                            "start": {
                              "line": 102,
                              "column": 24
                            },
                            "end": {
                              "line": 102,
                              "column": 33
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 4444,
                            "end": 4448,
                            "loc": {
                              "start": {
                                "line": 102,
                                "column": 24
                              },
                              "end": {
                                "line": 102,
                                "column": 28
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4449,
                            "end": 4453,
                            "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": 4456,
                          "end": 4497,
                          "loc": {
                            "start": {
                              "line": 102,
                              "column": 36
                            },
                            "end": {
                              "line": 102,
                              "column": 77
                            }
                          },
                          "range": [
                            4456,
                            4497
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 4506,
                      "end": 4527,
                      "loc": {
                        "start": {
                          "line": 103,
                          "column": 8
                        },
                        "end": {
                          "line": 103,
                          "column": 29
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 4506,
                        "end": 4526,
                        "loc": {
                          "start": {
                            "line": 103,
                            "column": 8
                          },
                          "end": {
                            "line": 103,
                            "column": 28
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 4506,
                          "end": 4517,
                          "loc": {
                            "start": {
                              "line": 103,
                              "column": 8
                            },
                            "end": {
                              "line": 103,
                              "column": 19
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 4506,
                            "end": 4510,
                            "loc": {
                              "start": {
                                "line": 103,
                                "column": 8
                              },
                              "end": {
                                "line": 103,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4511,
                            "end": 4517,
                            "loc": {
                              "start": {
                                "line": 103,
                                "column": 13
                              },
                              "end": {
                                "line": 103,
                                "column": 19
                              }
                            },
                            "name": "points"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "ArrayExpression",
                          "start": 4520,
                          "end": 4526,
                          "loc": {
                            "start": {
                              "line": 103,
                              "column": 22
                            },
                            "end": {
                              "line": 103,
                              "column": 28
                            }
                          },
                          "elements": [
                            {
                              "type": "ThisExpression",
                              "start": 4521,
                              "end": 4525,
                              "loc": {
                                "start": {
                                  "line": 103,
                                  "column": 23
                                },
                                "end": {
                                  "line": 103,
                                  "column": 27
                                }
                              }
                            }
                          ]
                        },
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "pseudonym, place your interactions here",
                          "start": 4456,
                          "end": 4497,
                          "loc": {
                            "start": {
                              "line": 102,
                              "column": 36
                            },
                            "end": {
                              "line": 102,
                              "column": 77
                            }
                          },
                          "range": [
                            4456,
                            4497
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 4536,
                      "end": 4583,
                      "loc": {
                        "start": {
                          "line": 104,
                          "column": 8
                        },
                        "end": {
                          "line": 104,
                          "column": 55
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 4536,
                        "end": 4582,
                        "loc": {
                          "start": {
                            "line": 104,
                            "column": 8
                          },
                          "end": {
                            "line": 104,
                            "column": 54
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 4536,
                          "end": 4544,
                          "loc": {
                            "start": {
                              "line": 104,
                              "column": 8
                            },
                            "end": {
                              "line": 104,
                              "column": 16
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 4536,
                            "end": 4540,
                            "loc": {
                              "start": {
                                "line": 104,
                                "column": 8
                              },
                              "end": {
                                "line": 104,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4541,
                            "end": 4544,
                            "loc": {
                              "start": {
                                "line": 104,
                                "column": 13
                              },
                              "end": {
                                "line": 104,
                                "column": 16
                              }
                            },
                            "name": "add"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 4545,
                            "end": 4554,
                            "loc": {
                              "start": {
                                "line": 104,
                                "column": 17
                              },
                              "end": {
                                "line": 104,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 4545,
                              "end": 4549,
                              "loc": {
                                "start": {
                                  "line": 104,
                                  "column": 17
                                },
                                "end": {
                                  "line": 104,
                                  "column": 21
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 4550,
                              "end": 4554,
                              "loc": {
                                "start": {
                                  "line": 104,
                                  "column": 22
                                },
                                "end": {
                                  "line": 104,
                                  "column": 26
                                }
                              },
                              "name": "mesh"
                            },
                            "computed": false
                          },
                          {
                            "type": "MemberExpression",
                            "start": 4556,
                            "end": 4581,
                            "loc": {
                              "start": {
                                "line": 104,
                                "column": 28
                              },
                              "end": {
                                "line": 104,
                                "column": 53
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 4556,
                              "end": 4560,
                              "loc": {
                                "start": {
                                  "line": 104,
                                  "column": 28
                                },
                                "end": {
                                  "line": 104,
                                  "column": 32
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 4561,
                              "end": 4581,
                              "loc": {
                                "start": {
                                  "line": 104,
                                  "column": 33
                                },
                                "end": {
                                  "line": 104,
                                  "column": 53
                                }
                              },
                              "name": "constraintsSubstrate"
                            },
                            "computed": false
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 4595,
              "end": 4732,
              "loc": {
                "start": {
                  "line": 107,
                  "column": 4
                },
                "end": {
                  "line": 111,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 4601,
                "end": 4605,
                "loc": {
                  "start": {
                    "line": 107,
                    "column": 10
                  },
                  "end": {
                    "line": 107,
                    "column": 14
                  }
                },
                "name": "move"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 4605,
                "end": 4732,
                "loc": {
                  "start": {
                    "line": 107,
                    "column": 14
                  },
                  "end": {
                    "line": 111,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 4606,
                    "end": 4614,
                    "loc": {
                      "start": {
                        "line": 107,
                        "column": 15
                      },
                      "end": {
                        "line": 107,
                        "column": 23
                      }
                    },
                    "name": "position"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 4616,
                  "end": 4732,
                  "loc": {
                    "start": {
                      "line": 107,
                      "column": 25
                    },
                    "end": {
                      "line": 111,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 4626,
                      "end": 4655,
                      "loc": {
                        "start": {
                          "line": 108,
                          "column": 8
                        },
                        "end": {
                          "line": 108,
                          "column": 37
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 4626,
                        "end": 4654,
                        "loc": {
                          "start": {
                            "line": 108,
                            "column": 8
                          },
                          "end": {
                            "line": 108,
                            "column": 36
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 4626,
                          "end": 4644,
                          "loc": {
                            "start": {
                              "line": 108,
                              "column": 8
                            },
                            "end": {
                              "line": 108,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 4626,
                            "end": 4639,
                            "loc": {
                              "start": {
                                "line": 108,
                                "column": 8
                              },
                              "end": {
                                "line": 108,
                                "column": 21
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 4626,
                              "end": 4630,
                              "loc": {
                                "start": {
                                  "line": 108,
                                  "column": 8
                                },
                                "end": {
                                  "line": 108,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 4631,
                              "end": 4639,
                              "loc": {
                                "start": {
                                  "line": 108,
                                  "column": 13
                                },
                                "end": {
                                  "line": 108,
                                  "column": 21
                                }
                              },
                              "name": "position"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4640,
                            "end": 4644,
                            "loc": {
                              "start": {
                                "line": 108,
                                "column": 22
                              },
                              "end": {
                                "line": 108,
                                "column": 26
                              }
                            },
                            "name": "copy"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 4645,
                            "end": 4653,
                            "loc": {
                              "start": {
                                "line": 108,
                                "column": 27
                              },
                              "end": {
                                "line": 108,
                                "column": 35
                              }
                            },
                            "name": "position"
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 4664,
                      "end": 4695,
                      "loc": {
                        "start": {
                          "line": 109,
                          "column": 8
                        },
                        "end": {
                          "line": 109,
                          "column": 39
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 4664,
                        "end": 4694,
                        "loc": {
                          "start": {
                            "line": 109,
                            "column": 8
                          },
                          "end": {
                            "line": 109,
                            "column": 38
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 4670,
                          "end": 4694,
                          "loc": {
                            "start": {
                              "line": 109,
                              "column": 14
                            },
                            "end": {
                              "line": 109,
                              "column": 38
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 4670,
                            "end": 4679,
                            "loc": {
                              "start": {
                                "line": 109,
                                "column": 14
                              },
                              "end": {
                                "line": 109,
                                "column": 23
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 4670,
                              "end": 4674,
                              "loc": {
                                "start": {
                                  "line": 109,
                                  "column": 14
                                },
                                "end": {
                                  "line": 109,
                                  "column": 18
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 4675,
                              "end": 4679,
                              "loc": {
                                "start": {
                                  "line": 109,
                                  "column": 19
                                },
                                "end": {
                                  "line": 109,
                                  "column": 23
                                }
                              },
                              "name": "emit"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Literal",
                              "start": 4680,
                              "end": 4687,
                              "loc": {
                                "start": {
                                  "line": 109,
                                  "column": 24
                                },
                                "end": {
                                  "line": 109,
                                  "column": 31
                                }
                              },
                              "value": "moved",
                              "rawValue": "moved",
                              "raw": "'moved'"
                            },
                            {
                              "type": "ThisExpression",
                              "start": 4689,
                              "end": 4693,
                              "loc": {
                                "start": {
                                  "line": 109,
                                  "column": 33
                                },
                                "end": {
                                  "line": 109,
                                  "column": 37
                                }
                              }
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 4704,
                      "end": 4726,
                      "loc": {
                        "start": {
                          "line": 110,
                          "column": 8
                        },
                        "end": {
                          "line": 110,
                          "column": 30
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 4704,
                        "end": 4725,
                        "loc": {
                          "start": {
                            "line": 110,
                            "column": 8
                          },
                          "end": {
                            "line": 110,
                            "column": 29
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 4704,
                          "end": 4723,
                          "loc": {
                            "start": {
                              "line": 110,
                              "column": 8
                            },
                            "end": {
                              "line": 110,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 4704,
                            "end": 4708,
                            "loc": {
                              "start": {
                                "line": 110,
                                "column": 8
                              },
                              "end": {
                                "line": 110,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4709,
                            "end": 4723,
                            "loc": {
                              "start": {
                                "line": 110,
                                "column": 13
                              },
                              "end": {
                                "line": 110,
                                "column": 27
                              }
                            },
                            "name": "updateGeometry"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 4738,
              "end": 4884,
              "loc": {
                "start": {
                  "line": 113,
                  "column": 4
                },
                "end": {
                  "line": 117,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 4744,
                "end": 4756,
                "loc": {
                  "start": {
                    "line": 113,
                    "column": 10
                  },
                  "end": {
                    "line": 113,
                    "column": 22
                  }
                },
                "name": "moveRelative"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 4756,
                "end": 4884,
                "loc": {
                  "start": {
                    "line": 113,
                    "column": 22
                  },
                  "end": {
                    "line": 117,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 4757,
                    "end": 4766,
                    "loc": {
                      "start": {
                        "line": 113,
                        "column": 23
                      },
                      "end": {
                        "line": 113,
                        "column": 32
                      }
                    },
                    "name": "direction"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 4768,
                  "end": 4884,
                  "loc": {
                    "start": {
                      "line": 113,
                      "column": 34
                    },
                    "end": {
                      "line": 117,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 4778,
                      "end": 4807,
                      "loc": {
                        "start": {
                          "line": 114,
                          "column": 8
                        },
                        "end": {
                          "line": 114,
                          "column": 37
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 4778,
                        "end": 4806,
                        "loc": {
                          "start": {
                            "line": 114,
                            "column": 8
                          },
                          "end": {
                            "line": 114,
                            "column": 36
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 4778,
                          "end": 4795,
                          "loc": {
                            "start": {
                              "line": 114,
                              "column": 8
                            },
                            "end": {
                              "line": 114,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 4778,
                            "end": 4791,
                            "loc": {
                              "start": {
                                "line": 114,
                                "column": 8
                              },
                              "end": {
                                "line": 114,
                                "column": 21
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 4778,
                              "end": 4782,
                              "loc": {
                                "start": {
                                  "line": 114,
                                  "column": 8
                                },
                                "end": {
                                  "line": 114,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 4783,
                              "end": 4791,
                              "loc": {
                                "start": {
                                  "line": 114,
                                  "column": 13
                                },
                                "end": {
                                  "line": 114,
                                  "column": 21
                                }
                              },
                              "name": "position"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4792,
                            "end": 4795,
                            "loc": {
                              "start": {
                                "line": 114,
                                "column": 22
                              },
                              "end": {
                                "line": 114,
                                "column": 25
                              }
                            },
                            "name": "add"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 4796,
                            "end": 4805,
                            "loc": {
                              "start": {
                                "line": 114,
                                "column": 26
                              },
                              "end": {
                                "line": 114,
                                "column": 35
                              }
                            },
                            "name": "direction"
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 4816,
                      "end": 4847,
                      "loc": {
                        "start": {
                          "line": 115,
                          "column": 8
                        },
                        "end": {
                          "line": 115,
                          "column": 39
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 4816,
                        "end": 4846,
                        "loc": {
                          "start": {
                            "line": 115,
                            "column": 8
                          },
                          "end": {
                            "line": 115,
                            "column": 38
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 4822,
                          "end": 4846,
                          "loc": {
                            "start": {
                              "line": 115,
                              "column": 14
                            },
                            "end": {
                              "line": 115,
                              "column": 38
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 4822,
                            "end": 4831,
                            "loc": {
                              "start": {
                                "line": 115,
                                "column": 14
                              },
                              "end": {
                                "line": 115,
                                "column": 23
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 4822,
                              "end": 4826,
                              "loc": {
                                "start": {
                                  "line": 115,
                                  "column": 14
                                },
                                "end": {
                                  "line": 115,
                                  "column": 18
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 4827,
                              "end": 4831,
                              "loc": {
                                "start": {
                                  "line": 115,
                                  "column": 19
                                },
                                "end": {
                                  "line": 115,
                                  "column": 23
                                }
                              },
                              "name": "emit"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Literal",
                              "start": 4832,
                              "end": 4839,
                              "loc": {
                                "start": {
                                  "line": 115,
                                  "column": 24
                                },
                                "end": {
                                  "line": 115,
                                  "column": 31
                                }
                              },
                              "value": "moved",
                              "rawValue": "moved",
                              "raw": "'moved'"
                            },
                            {
                              "type": "ThisExpression",
                              "start": 4841,
                              "end": 4845,
                              "loc": {
                                "start": {
                                  "line": 115,
                                  "column": 33
                                },
                                "end": {
                                  "line": 115,
                                  "column": 37
                                }
                              }
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 4856,
                      "end": 4878,
                      "loc": {
                        "start": {
                          "line": 116,
                          "column": 8
                        },
                        "end": {
                          "line": 116,
                          "column": 30
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 4856,
                        "end": 4877,
                        "loc": {
                          "start": {
                            "line": 116,
                            "column": 8
                          },
                          "end": {
                            "line": 116,
                            "column": 29
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 4856,
                          "end": 4875,
                          "loc": {
                            "start": {
                              "line": 116,
                              "column": 8
                            },
                            "end": {
                              "line": 116,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 4856,
                            "end": 4860,
                            "loc": {
                              "start": {
                                "line": 116,
                                "column": 8
                              },
                              "end": {
                                "line": 116,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4861,
                            "end": 4875,
                            "loc": {
                              "start": {
                                "line": 116,
                                "column": 13
                              },
                              "end": {
                                "line": 116,
                                "column": 27
                              }
                            },
                            "name": "updateGeometry"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 4890,
              "end": 5129,
              "loc": {
                "start": {
                  "line": 119,
                  "column": 4
                },
                "end": {
                  "line": 124,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 4896,
                "end": 4903,
                "loc": {
                  "start": {
                    "line": 119,
                    "column": 10
                  },
                  "end": {
                    "line": 119,
                    "column": 17
                  }
                },
                "name": "endDrag"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 4903,
                "end": 5129,
                "loc": {
                  "start": {
                    "line": 119,
                    "column": 17
                  },
                  "end": {
                    "line": 124,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 4904,
                    "end": 4910,
                    "loc": {
                      "start": {
                        "line": 119,
                        "column": 18
                      },
                      "end": {
                        "line": 119,
                        "column": 24
                      }
                    },
                    "name": "sketch"
                  },
                  {
                    "type": "Identifier",
                    "start": 4912,
                    "end": 4918,
                    "loc": {
                      "start": {
                        "line": 119,
                        "column": 26
                      },
                      "end": {
                        "line": 119,
                        "column": 32
                      }
                    },
                    "name": "socket"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 4920,
                  "end": 5129,
                  "loc": {
                    "start": {
                      "line": 119,
                      "column": 34
                    },
                    "end": {
                      "line": 124,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 4930,
                      "end": 5071,
                      "loc": {
                        "start": {
                          "line": 120,
                          "column": 8
                        },
                        "end": {
                          "line": 122,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "CallExpression",
                        "start": 4934,
                        "end": 4957,
                        "loc": {
                          "start": {
                            "line": 120,
                            "column": 12
                          },
                          "end": {
                            "line": 120,
                            "column": 35
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 4934,
                          "end": 4951,
                          "loc": {
                            "start": {
                              "line": 120,
                              "column": 12
                            },
                            "end": {
                              "line": 120,
                              "column": 29
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 4934,
                            "end": 4940,
                            "loc": {
                              "start": {
                                "line": 120,
                                "column": 12
                              },
                              "end": {
                                "line": 120,
                                "column": 18
                              }
                            },
                            "name": "sketch"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4941,
                            "end": 4951,
                            "loc": {
                              "start": {
                                "line": 120,
                                "column": 19
                              },
                              "end": {
                                "line": 120,
                                "column": 29
                              }
                            },
                            "name": "isOnSketch"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ThisExpression",
                            "start": 4952,
                            "end": 4956,
                            "loc": {
                              "start": {
                                "line": 120,
                                "column": 30
                              },
                              "end": {
                                "line": 120,
                                "column": 34
                              }
                            }
                          }
                        ]
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 4959,
                        "end": 5071,
                        "loc": {
                          "start": {
                            "line": 120,
                            "column": 37
                          },
                          "end": {
                            "line": 122,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 4973,
                            "end": 5061,
                            "loc": {
                              "start": {
                                "line": 121,
                                "column": 12
                              },
                              "end": {
                                "line": 121,
                                "column": 100
                              }
                            },
                            "expression": {
                              "type": "AwaitExpression",
                              "start": 4973,
                              "end": 5060,
                              "loc": {
                                "start": {
                                  "line": 121,
                                  "column": 12
                                },
                                "end": {
                                  "line": 121,
                                  "column": 99
                                }
                              },
                              "all": false,
                              "argument": {
                                "type": "CallExpression",
                                "start": 4979,
                                "end": 5060,
                                "loc": {
                                  "start": {
                                    "line": 121,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 121,
                                    "column": 99
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 4979,
                                  "end": 5052,
                                  "loc": {
                                    "start": {
                                      "line": 121,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 121,
                                      "column": 91
                                    }
                                  },
                                  "object": {
                                    "type": "CallExpression",
                                    "start": 4979,
                                    "end": 5044,
                                    "loc": {
                                      "start": {
                                        "line": 121,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 121,
                                        "column": 83
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 4979,
                                      "end": 5017,
                                      "loc": {
                                        "start": {
                                          "line": 121,
                                          "column": 18
                                        },
                                        "end": {
                                          "line": 121,
                                          "column": 56
                                        }
                                      },
                                      "object": {
                                        "type": "CallExpression",
                                        "start": 4979,
                                        "end": 5013,
                                        "loc": {
                                          "start": {
                                            "line": 121,
                                            "column": 18
                                          },
                                          "end": {
                                            "line": 121,
                                            "column": 52
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 4979,
                                          "end": 5005,
                                          "loc": {
                                            "start": {
                                              "line": 121,
                                              "column": 18
                                            },
                                            "end": {
                                              "line": 121,
                                              "column": 44
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 4979,
                                            "end": 4983,
                                            "loc": {
                                              "start": {
                                                "line": 121,
                                                "column": 18
                                              },
                                              "end": {
                                                "line": 121,
                                                "column": 22
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 4984,
                                            "end": 5005,
                                            "loc": {
                                              "start": {
                                                "line": 121,
                                                "column": 23
                                              },
                                              "end": {
                                                "line": 121,
                                                "column": 44
                                              }
                                            },
                                            "name": "prepareUpdateToServer"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 5006,
                                            "end": 5012,
                                            "loc": {
                                              "start": {
                                                "line": 121,
                                                "column": 45
                                              },
                                              "end": {
                                                "line": 121,
                                                "column": 51
                                              }
                                            },
                                            "name": "sketch"
                                          }
                                        ]
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 5014,
                                        "end": 5017,
                                        "loc": {
                                          "start": {
                                            "line": 121,
                                            "column": 53
                                          },
                                          "end": {
                                            "line": 121,
                                            "column": 56
                                          }
                                        },
                                        "name": "and"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "CallExpression",
                                        "start": 5018,
                                        "end": 5043,
                                        "loc": {
                                          "start": {
                                            "line": 121,
                                            "column": 57
                                          },
                                          "end": {
                                            "line": 121,
                                            "column": 82
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 5018,
                                          "end": 5041,
                                          "loc": {
                                            "start": {
                                              "line": 121,
                                              "column": 57
                                            },
                                            "end": {
                                              "line": 121,
                                              "column": 80
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 5018,
                                            "end": 5024,
                                            "loc": {
                                              "start": {
                                                "line": 121,
                                                "column": 57
                                              },
                                              "end": {
                                                "line": 121,
                                                "column": 63
                                              }
                                            },
                                            "name": "sketch"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 5025,
                                            "end": 5041,
                                            "loc": {
                                              "start": {
                                                "line": 121,
                                                "column": 64
                                              },
                                              "end": {
                                                "line": 121,
                                                "column": 80
                                              }
                                            },
                                            "name": "updateFromServer"
                                          },
                                          "computed": false
                                        },
                                        "arguments": []
                                      }
                                    ]
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 5045,
                                    "end": 5052,
                                    "loc": {
                                      "start": {
                                        "line": 121,
                                        "column": 84
                                      },
                                      "end": {
                                        "line": 121,
                                        "column": 91
                                      }
                                    },
                                    "name": "execute"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 5053,
                                    "end": 5059,
                                    "loc": {
                                      "start": {
                                        "line": 121,
                                        "column": 92
                                      },
                                      "end": {
                                        "line": 121,
                                        "column": 98
                                      }
                                    },
                                    "name": "socket"
                                  }
                                ]
                              }
                            }
                          }
                        ]
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 5080,
                      "end": 5123,
                      "loc": {
                        "start": {
                          "line": 123,
                          "column": 8
                        },
                        "end": {
                          "line": 123,
                          "column": 51
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 5080,
                        "end": 5122,
                        "loc": {
                          "start": {
                            "line": 123,
                            "column": 8
                          },
                          "end": {
                            "line": 123,
                            "column": 50
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 5086,
                          "end": 5122,
                          "loc": {
                            "start": {
                              "line": 123,
                              "column": 14
                            },
                            "end": {
                              "line": 123,
                              "column": 50
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 5086,
                            "end": 5095,
                            "loc": {
                              "start": {
                                "line": 123,
                                "column": 14
                              },
                              "end": {
                                "line": 123,
                                "column": 23
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 5086,
                              "end": 5090,
                              "loc": {
                                "start": {
                                  "line": 123,
                                  "column": 14
                                },
                                "end": {
                                  "line": 123,
                                  "column": 18
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5091,
                              "end": 5095,
                              "loc": {
                                "start": {
                                  "line": 123,
                                  "column": 19
                                },
                                "end": {
                                  "line": 123,
                                  "column": 23
                                }
                              },
                              "name": "emit"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Literal",
                              "start": 5096,
                              "end": 5105,
                              "loc": {
                                "start": {
                                  "line": 123,
                                  "column": 24
                                },
                                "end": {
                                  "line": 123,
                                  "column": 33
                                }
                              },
                              "value": "dragend",
                              "rawValue": "dragend",
                              "raw": "'dragend'"
                            },
                            {
                              "type": "Identifier",
                              "start": 5107,
                              "end": 5113,
                              "loc": {
                                "start": {
                                  "line": 123,
                                  "column": 35
                                },
                                "end": {
                                  "line": 123,
                                  "column": 41
                                }
                              },
                              "name": "sketch"
                            },
                            {
                              "type": "Identifier",
                              "start": 5115,
                              "end": 5121,
                              "loc": {
                                "start": {
                                  "line": 123,
                                  "column": 43
                                },
                                "end": {
                                  "line": 123,
                                  "column": 49
                                }
                              },
                              "name": "socket"
                            }
                          ]
                        }
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 5135,
              "end": 5214,
              "loc": {
                "start": {
                  "line": 126,
                  "column": 4
                },
                "end": {
                  "line": 128,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 5135,
                "end": 5145,
                "loc": {
                  "start": {
                    "line": 126,
                    "column": 4
                  },
                  "end": {
                    "line": 126,
                    "column": 14
                  }
                },
                "name": "setVisible"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 5145,
                "end": 5214,
                "loc": {
                  "start": {
                    "line": 126,
                    "column": 14
                  },
                  "end": {
                    "line": 128,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 5146,
                    "end": 5156,
                    "loc": {
                      "start": {
                        "line": 126,
                        "column": 15
                      },
                      "end": {
                        "line": 126,
                        "column": 25
                      }
                    },
                    "name": "visibility"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 5158,
                  "end": 5214,
                  "loc": {
                    "start": {
                      "line": 126,
                      "column": 27
                    },
                    "end": {
                      "line": 128,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 5168,
                      "end": 5208,
                      "loc": {
                        "start": {
                          "line": 127,
                          "column": 8
                        },
                        "end": {
                          "line": 127,
                          "column": 48
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 5168,
                        "end": 5207,
                        "loc": {
                          "start": {
                            "line": 127,
                            "column": 8
                          },
                          "end": {
                            "line": 127,
                            "column": 47
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 5168,
                          "end": 5194,
                          "loc": {
                            "start": {
                              "line": 127,
                              "column": 8
                            },
                            "end": {
                              "line": 127,
                              "column": 34
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 5168,
                            "end": 5186,
                            "loc": {
                              "start": {
                                "line": 127,
                                "column": 8
                              },
                              "end": {
                                "line": 127,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 5168,
                              "end": 5177,
                              "loc": {
                                "start": {
                                  "line": 127,
                                  "column": 8
                                },
                                "end": {
                                  "line": 127,
                                  "column": 17
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 5168,
                                "end": 5172,
                                "loc": {
                                  "start": {
                                    "line": 127,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 127,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 5173,
                                "end": 5177,
                                "loc": {
                                  "start": {
                                    "line": 127,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 127,
                                    "column": 17
                                  }
                                },
                                "name": "mesh"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5178,
                              "end": 5186,
                              "loc": {
                                "start": {
                                  "line": 127,
                                  "column": 18
                                },
                                "end": {
                                  "line": 127,
                                  "column": 26
                                }
                              },
                              "name": "material"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 5187,
                            "end": 5194,
                            "loc": {
                              "start": {
                                "line": 127,
                                "column": 27
                              },
                              "end": {
                                "line": 127,
                                "column": 34
                              }
                            },
                            "name": "visible"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Identifier",
                          "start": 5197,
                          "end": 5207,
                          "loc": {
                            "start": {
                              "line": 127,
                              "column": 37
                            },
                            "end": {
                              "line": 127,
                              "column": 47
                            }
                          },
                          "name": "visibility"
                        }
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 5220,
              "end": 5239,
              "loc": {
                "start": {
                  "line": 130,
                  "column": 4
                },
                "end": {
                  "line": 130,
                  "column": 23
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 5220,
                "end": 5234,
                "loc": {
                  "start": {
                    "line": 130,
                    "column": 4
                  },
                  "end": {
                    "line": 130,
                    "column": 18
                  }
                },
                "name": "updateGeometry"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 5234,
                "end": 5239,
                "loc": {
                  "start": {
                    "line": 130,
                    "column": 18
                  },
                  "end": {
                    "line": 130,
                    "column": 23
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 5237,
                  "end": 5239,
                  "loc": {
                    "start": {
                      "line": 130,
                      "column": 21
                    },
                    "end": {
                      "line": 130,
                      "column": 23
                    }
                  },
                  "body": []
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 5245,
              "end": 5284,
              "loc": {
                "start": {
                  "line": 132,
                  "column": 4
                },
                "end": {
                  "line": 132,
                  "column": 43
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 5245,
                "end": 5265,
                "loc": {
                  "start": {
                    "line": 132,
                    "column": 4
                  },
                  "end": {
                    "line": 132,
                    "column": 24
                  }
                },
                "name": "getAuxiliaryGeometry"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 5265,
                "end": 5284,
                "loc": {
                  "start": {
                    "line": 132,
                    "column": 24
                  },
                  "end": {
                    "line": 132,
                    "column": 43
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 5268,
                  "end": 5284,
                  "loc": {
                    "start": {
                      "line": 132,
                      "column": 27
                    },
                    "end": {
                      "line": 132,
                      "column": 43
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 5270,
                      "end": 5282,
                      "loc": {
                        "start": {
                          "line": 132,
                          "column": 29
                        },
                        "end": {
                          "line": 132,
                          "column": 41
                        }
                      },
                      "argument": {
                        "type": "Literal",
                        "start": 5277,
                        "end": 5281,
                        "loc": {
                          "start": {
                            "line": 132,
                            "column": 36
                          },
                          "end": {
                            "line": 132,
                            "column": 40
                          }
                        },
                        "value": null,
                        "rawValue": null,
                        "raw": "null"
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 5290,
              "end": 5319,
              "loc": {
                "start": {
                  "line": 134,
                  "column": 4
                },
                "end": {
                  "line": 134,
                  "column": 33
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 5290,
                "end": 5313,
                "loc": {
                  "start": {
                    "line": 134,
                    "column": 4
                  },
                  "end": {
                    "line": 134,
                    "column": 27
                  }
                },
                "name": "updateAuxiliaryGeometry"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 5313,
                "end": 5319,
                "loc": {
                  "start": {
                    "line": 134,
                    "column": 27
                  },
                  "end": {
                    "line": 134,
                    "column": 33
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 5316,
                  "end": 5319,
                  "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": 5325,
                  "end": 5358,
                  "loc": {
                    "start": {
                      "line": 136,
                      "column": 4
                    },
                    "end": {
                      "line": 136,
                      "column": 37
                    }
                  },
                  "range": [
                    5325,
                    5358
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 5363,
              "end": 5564,
              "loc": {
                "start": {
                  "line": 137,
                  "column": 4
                },
                "end": {
                  "line": 142,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 5363,
                "end": 5375,
                "loc": {
                  "start": {
                    "line": 137,
                    "column": 4
                  },
                  "end": {
                    "line": 137,
                    "column": 16
                  }
                },
                "name": "setGeomSizes",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 5375,
                "end": 5564,
                "loc": {
                  "start": {
                    "line": 137,
                    "column": 16
                  },
                  "end": {
                    "line": 142,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 5376,
                    "end": 5381,
                    "loc": {
                      "start": {
                        "line": 137,
                        "column": 17
                      },
                      "end": {
                        "line": 137,
                        "column": 22
                      }
                    },
                    "name": "sizes"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 5383,
                  "end": 5564,
                  "loc": {
                    "start": {
                      "line": 137,
                      "column": 24
                    },
                    "end": {
                      "line": 142,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 5393,
                      "end": 5410,
                      "loc": {
                        "start": {
                          "line": 138,
                          "column": 8
                        },
                        "end": {
                          "line": 138,
                          "column": 25
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 5397,
                          "end": 5409,
                          "loc": {
                            "start": {
                              "line": 138,
                              "column": 12
                            },
                            "end": {
                              "line": 138,
                              "column": 24
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 5397,
                            "end": 5398,
                            "loc": {
                              "start": {
                                "line": 138,
                                "column": 12
                              },
                              "end": {
                                "line": 138,
                                "column": 13
                              }
                            },
                            "name": "s"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 5401,
                            "end": 5409,
                            "loc": {
                              "start": {
                                "line": 138,
                                "column": 16
                              },
                              "end": {
                                "line": 138,
                                "column": 24
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 5401,
                              "end": 5406,
                              "loc": {
                                "start": {
                                  "line": 138,
                                  "column": 16
                                },
                                "end": {
                                  "line": 138,
                                  "column": 21
                                }
                              },
                              "name": "sizes"
                            },
                            "property": {
                              "type": "Literal",
                              "start": 5407,
                              "end": 5408,
                              "loc": {
                                "start": {
                                  "line": 138,
                                  "column": 22
                                },
                                "end": {
                                  "line": 138,
                                  "column": 23
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            },
                            "computed": true
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 5419,
                      "end": 5448,
                      "loc": {
                        "start": {
                          "line": 139,
                          "column": 8
                        },
                        "end": {
                          "line": 139,
                          "column": 37
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 5419,
                        "end": 5447,
                        "loc": {
                          "start": {
                            "line": 139,
                            "column": 8
                          },
                          "end": {
                            "line": 139,
                            "column": 36
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 5419,
                          "end": 5438,
                          "loc": {
                            "start": {
                              "line": 139,
                              "column": 8
                            },
                            "end": {
                              "line": 139,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 5419,
                            "end": 5434,
                            "loc": {
                              "start": {
                                "line": 139,
                                "column": 8
                              },
                              "end": {
                                "line": 139,
                                "column": 23
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 5419,
                              "end": 5428,
                              "loc": {
                                "start": {
                                  "line": 139,
                                  "column": 8
                                },
                                "end": {
                                  "line": 139,
                                  "column": 17
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 5419,
                                "end": 5423,
                                "loc": {
                                  "start": {
                                    "line": 139,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 139,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 5424,
                                "end": 5428,
                                "loc": {
                                  "start": {
                                    "line": 139,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 139,
                                    "column": 17
                                  }
                                },
                                "name": "mesh"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5429,
                              "end": 5434,
                              "loc": {
                                "start": {
                                  "line": 139,
                                  "column": 18
                                },
                                "end": {
                                  "line": 139,
                                  "column": 23
                                }
                              },
                              "name": "scale"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 5435,
                            "end": 5438,
                            "loc": {
                              "start": {
                                "line": 139,
                                "column": 24
                              },
                              "end": {
                                "line": 139,
                                "column": 27
                              }
                            },
                            "name": "set"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 5439,
                            "end": 5440,
                            "loc": {
                              "start": {
                                "line": 139,
                                "column": 28
                              },
                              "end": {
                                "line": 139,
                                "column": 29
                              }
                            },
                            "name": "s"
                          },
                          {
                            "type": "Identifier",
                            "start": 5442,
                            "end": 5443,
                            "loc": {
                              "start": {
                                "line": 139,
                                "column": 31
                              },
                              "end": {
                                "line": 139,
                                "column": 32
                              }
                            },
                            "name": "s"
                          },
                          {
                            "type": "Identifier",
                            "start": 5445,
                            "end": 5446,
                            "loc": {
                              "start": {
                                "line": 139,
                                "column": 34
                              },
                              "end": {
                                "line": 139,
                                "column": 35
                              }
                            },
                            "name": "s"
                          }
                        ]
                      }
                    },
                    {
                      "type": "IfStatement",
                      "start": 5457,
                      "end": 5558,
                      "loc": {
                        "start": {
                          "line": 140,
                          "column": 8
                        },
                        "end": {
                          "line": 141,
                          "column": 62
                        }
                      },
                      "test": {
                        "type": "MemberExpression",
                        "start": 5461,
                        "end": 5494,
                        "loc": {
                          "start": {
                            "line": 140,
                            "column": 12
                          },
                          "end": {
                            "line": 140,
                            "column": 45
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 5461,
                          "end": 5486,
                          "loc": {
                            "start": {
                              "line": 140,
                              "column": 12
                            },
                            "end": {
                              "line": 140,
                              "column": 37
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 5461,
                            "end": 5465,
                            "loc": {
                              "start": {
                                "line": 140,
                                "column": 12
                              },
                              "end": {
                                "line": 140,
                                "column": 16
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 5466,
                            "end": 5486,
                            "loc": {
                              "start": {
                                "line": 140,
                                "column": 17
                              },
                              "end": {
                                "line": 140,
                                "column": 37
                              }
                            },
                            "name": "constraintsSubstrate"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 5487,
                          "end": 5494,
                          "loc": {
                            "start": {
                              "line": 140,
                              "column": 38
                            },
                            "end": {
                              "line": 140,
                              "column": 45
                            }
                          },
                          "name": "visible"
                        },
                        "computed": false
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 5508,
                        "end": 5558,
                        "loc": {
                          "start": {
                            "line": 141,
                            "column": 12
                          },
                          "end": {
                            "line": 141,
                            "column": 62
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 5508,
                          "end": 5557,
                          "loc": {
                            "start": {
                              "line": 141,
                              "column": 12
                            },
                            "end": {
                              "line": 141,
                              "column": 61
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 5508,
                            "end": 5551,
                            "loc": {
                              "start": {
                                "line": 141,
                                "column": 12
                              },
                              "end": {
                                "line": 141,
                                "column": 55
                              }
                            },
                            "object": {
                              "type": "CallExpression",
                              "start": 5508,
                              "end": 5533,
                              "loc": {
                                "start": {
                                  "line": 141,
                                  "column": 12
                                },
                                "end": {
                                  "line": 141,
                                  "column": 37
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 5508,
                                "end": 5527,
                                "loc": {
                                  "start": {
                                    "line": 141,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 141,
                                    "column": 31
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 5508,
                                  "end": 5514,
                                  "loc": {
                                    "start": {
                                      "line": 141,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 141,
                                      "column": 18
                                    }
                                  },
                                  "name": "Sketch"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 5515,
                                  "end": 5527,
                                  "loc": {
                                    "start": {
                                      "line": 141,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 141,
                                      "column": 31
                                    }
                                  },
                                  "name": "FindSketchOf"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ThisExpression",
                                  "start": 5528,
                                  "end": 5532,
                                  "loc": {
                                    "start": {
                                      "line": 141,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 141,
                                      "column": 36
                                    }
                                  }
                                }
                              ]
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5534,
                              "end": 5551,
                              "loc": {
                                "start": {
                                  "line": 141,
                                  "column": 38
                                },
                                "end": {
                                  "line": 141,
                                  "column": 55
                                }
                              },
                              "name": "updateConstraints"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "ThisExpression",
                              "start": 5552,
                              "end": 5556,
                              "loc": {
                                "start": {
                                  "line": 141,
                                  "column": 56
                                },
                                "end": {
                                  "line": 141,
                                  "column": 60
                                }
                              }
                            }
                          ]
                        }
                      },
                      "alternate": null
                    }
                  ]
                }
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": "required method for updateSizes",
                  "start": 5325,
                  "end": 5358,
                  "loc": {
                    "start": {
                      "line": 136,
                      "column": 4
                    },
                    "end": {
                      "line": 136,
                      "column": 37
                    }
                  },
                  "range": [
                    5325,
                    5358
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 5570,
              "end": 5700,
              "loc": {
                "start": {
                  "line": 144,
                  "column": 4
                },
                "end": {
                  "line": 147,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 5570,
                "end": 5590,
                "loc": {
                  "start": {
                    "line": 144,
                    "column": 4
                  },
                  "end": {
                    "line": 144,
                    "column": 24
                  }
                },
                "name": "getSubstratePosition"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 5590,
                "end": 5700,
                "loc": {
                  "start": {
                    "line": 144,
                    "column": 24
                  },
                  "end": {
                    "line": 147,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 5591,
                    "end": 5594,
                    "loc": {
                      "start": {
                        "line": 144,
                        "column": 25
                      },
                      "end": {
                        "line": 144,
                        "column": 28
                      }
                    },
                    "name": "len"
                  },
                  {
                    "type": "Identifier",
                    "start": 5596,
                    "end": 5600,
                    "loc": {
                      "start": {
                        "line": 144,
                        "column": 30
                      },
                      "end": {
                        "line": 144,
                        "column": 34
                      }
                    },
                    "name": "size"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 5602,
                  "end": 5700,
                  "loc": {
                    "start": {
                      "line": 144,
                      "column": 36
                    },
                    "end": {
                      "line": 147,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 5612,
                      "end": 5674,
                      "loc": {
                        "start": {
                          "line": 145,
                          "column": 8
                        },
                        "end": {
                          "line": 145,
                          "column": 70
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 5616,
                          "end": 5673,
                          "loc": {
                            "start": {
                              "line": 145,
                              "column": 12
                            },
                            "end": {
                              "line": 145,
                              "column": 69
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 5616,
                            "end": 5619,
                            "loc": {
                              "start": {
                                "line": 145,
                                "column": 12
                              },
                              "end": {
                                "line": 145,
                                "column": 15
                              }
                            },
                            "name": "pos"
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 5622,
                            "end": 5673,
                            "loc": {
                              "start": {
                                "line": 145,
                                "column": 18
                              },
                              "end": {
                                "line": 145,
                                "column": 69
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 5626,
                              "end": 5639,
                              "loc": {
                                "start": {
                                  "line": 145,
                                  "column": 22
                                },
                                "end": {
                                  "line": 145,
                                  "column": 35
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 5626,
                                "end": 5631,
                                "loc": {
                                  "start": {
                                    "line": 145,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 145,
                                    "column": 27
                                  }
                                },
                                "name": "THREE"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 5632,
                                "end": 5639,
                                "loc": {
                                  "start": {
                                    "line": 145,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 145,
                                    "column": 35
                                  }
                                },
                                "name": "Vector3"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "BinaryExpression",
                                "start": 5640,
                                "end": 5654,
                                "loc": {
                                  "start": {
                                    "line": 145,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 145,
                                    "column": 50
                                  }
                                },
                                "left": {
                                  "type": "BinaryExpression",
                                  "start": 5640,
                                  "end": 5647,
                                  "loc": {
                                    "start": {
                                      "line": 145,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 145,
                                      "column": 43
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 5640,
                                    "end": 5643,
                                    "loc": {
                                      "start": {
                                        "line": 145,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 145,
                                        "column": 39
                                      }
                                    },
                                    "name": "len"
                                  },
                                  "operator": "/",
                                  "right": {
                                    "type": "Literal",
                                    "start": 5646,
                                    "end": 5647,
                                    "loc": {
                                      "start": {
                                        "line": 145,
                                        "column": 42
                                      },
                                      "end": {
                                        "line": 145,
                                        "column": 43
                                      }
                                    },
                                    "value": 2,
                                    "rawValue": 2,
                                    "raw": "2"
                                  }
                                },
                                "operator": "+",
                                "right": {
                                  "type": "Identifier",
                                  "start": 5650,
                                  "end": 5654,
                                  "loc": {
                                    "start": {
                                      "line": 145,
                                      "column": 46
                                    },
                                    "end": {
                                      "line": 145,
                                      "column": 50
                                    }
                                  },
                                  "name": "size"
                                }
                              },
                              {
                                "type": "BinaryExpression",
                                "start": 5656,
                                "end": 5669,
                                "loc": {
                                  "start": {
                                    "line": 145,
                                    "column": 52
                                  },
                                  "end": {
                                    "line": 145,
                                    "column": 65
                                  }
                                },
                                "left": {
                                  "type": "BinaryExpression",
                                  "start": 5656,
                                  "end": 5662,
                                  "loc": {
                                    "start": {
                                      "line": 145,
                                      "column": 52
                                    },
                                    "end": {
                                      "line": 145,
                                      "column": 58
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 5656,
                                    "end": 5660,
                                    "loc": {
                                      "start": {
                                        "line": 145,
                                        "column": 52
                                      },
                                      "end": {
                                        "line": 145,
                                        "column": 56
                                      }
                                    },
                                    "name": "size"
                                  },
                                  "operator": "/",
                                  "right": {
                                    "type": "Literal",
                                    "start": 5661,
                                    "end": 5662,
                                    "loc": {
                                      "start": {
                                        "line": 145,
                                        "column": 57
                                      },
                                      "end": {
                                        "line": 145,
                                        "column": 58
                                      }
                                    },
                                    "value": 2,
                                    "rawValue": 2,
                                    "raw": "2"
                                  }
                                },
                                "operator": "+",
                                "right": {
                                  "type": "Identifier",
                                  "start": 5665,
                                  "end": 5669,
                                  "loc": {
                                    "start": {
                                      "line": 145,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 145,
                                      "column": 65
                                    }
                                  },
                                  "name": "size"
                                }
                              },
                              {
                                "type": "Literal",
                                "start": 5671,
                                "end": 5672,
                                "loc": {
                                  "start": {
                                    "line": 145,
                                    "column": 67
                                  },
                                  "end": {
                                    "line": 145,
                                    "column": 68
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 5683,
                      "end": 5694,
                      "loc": {
                        "start": {
                          "line": 146,
                          "column": 8
                        },
                        "end": {
                          "line": 146,
                          "column": 19
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 5690,
                        "end": 5693,
                        "loc": {
                          "start": {
                            "line": 146,
                            "column": 15
                          },
                          "end": {
                            "line": 146,
                            "column": 18
                          }
                        },
                        "name": "pos"
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 5706,
              "end": 5798,
              "loc": {
                "start": {
                  "line": 149,
                  "column": 4
                },
                "end": {
                  "line": 151,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 5706,
                "end": 5714,
                "loc": {
                  "start": {
                    "line": 149,
                    "column": 4
                  },
                  "end": {
                    "line": 149,
                    "column": 12
                  }
                },
                "name": "getState"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 5714,
                "end": 5798,
                "loc": {
                  "start": {
                    "line": 149,
                    "column": 12
                  },
                  "end": {
                    "line": 151,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 5717,
                  "end": 5798,
                  "loc": {
                    "start": {
                      "line": 149,
                      "column": 15
                    },
                    "end": {
                      "line": 151,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 5727,
                      "end": 5792,
                      "loc": {
                        "start": {
                          "line": 150,
                          "column": 8
                        },
                        "end": {
                          "line": 150,
                          "column": 73
                        }
                      },
                      "argument": {
                        "type": "NewExpression",
                        "start": 5734,
                        "end": 5791,
                        "loc": {
                          "start": {
                            "line": 150,
                            "column": 15
                          },
                          "end": {
                            "line": 150,
                            "column": 72
                          }
                        },
                        "callee": {
                          "type": "Identifier",
                          "start": 5738,
                          "end": 5741,
                          "loc": {
                            "start": {
                              "line": 150,
                              "column": 19
                            },
                            "end": {
                              "line": 150,
                              "column": 22
                            }
                          },
                          "name": "Map"
                        },
                        "arguments": [
                          {
                            "type": "ArrayExpression",
                            "start": 5742,
                            "end": 5790,
                            "loc": {
                              "start": {
                                "line": 150,
                                "column": 23
                              },
                              "end": {
                                "line": 150,
                                "column": 71
                              }
                            },
                            "elements": [
                              {
                                "type": "ArrayExpression",
                                "start": 5743,
                                "end": 5765,
                                "loc": {
                                  "start": {
                                    "line": 150,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 150,
                                    "column": 46
                                  }
                                },
                                "elements": [
                                  {
                                    "type": "Literal",
                                    "start": 5744,
                                    "end": 5747,
                                    "loc": {
                                      "start": {
                                        "line": 150,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 150,
                                        "column": 28
                                      }
                                    },
                                    "value": "x",
                                    "rawValue": "x",
                                    "raw": "'x'"
                                  },
                                  {
                                    "type": "MemberExpression",
                                    "start": 5749,
                                    "end": 5764,
                                    "loc": {
                                      "start": {
                                        "line": 150,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 150,
                                        "column": 45
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 5749,
                                      "end": 5762,
                                      "loc": {
                                        "start": {
                                          "line": 150,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 150,
                                          "column": 43
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 5749,
                                        "end": 5753,
                                        "loc": {
                                          "start": {
                                            "line": 150,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 150,
                                            "column": 34
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 5754,
                                        "end": 5762,
                                        "loc": {
                                          "start": {
                                            "line": 150,
                                            "column": 35
                                          },
                                          "end": {
                                            "line": 150,
                                            "column": 43
                                          }
                                        },
                                        "name": "position"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 5763,
                                      "end": 5764,
                                      "loc": {
                                        "start": {
                                          "line": 150,
                                          "column": 44
                                        },
                                        "end": {
                                          "line": 150,
                                          "column": 45
                                        }
                                      },
                                      "name": "x"
                                    },
                                    "computed": false
                                  }
                                ]
                              },
                              {
                                "type": "ArrayExpression",
                                "start": 5767,
                                "end": 5789,
                                "loc": {
                                  "start": {
                                    "line": 150,
                                    "column": 48
                                  },
                                  "end": {
                                    "line": 150,
                                    "column": 70
                                  }
                                },
                                "elements": [
                                  {
                                    "type": "Literal",
                                    "start": 5768,
                                    "end": 5771,
                                    "loc": {
                                      "start": {
                                        "line": 150,
                                        "column": 49
                                      },
                                      "end": {
                                        "line": 150,
                                        "column": 52
                                      }
                                    },
                                    "value": "y",
                                    "rawValue": "y",
                                    "raw": "'y'"
                                  },
                                  {
                                    "type": "MemberExpression",
                                    "start": 5773,
                                    "end": 5788,
                                    "loc": {
                                      "start": {
                                        "line": 150,
                                        "column": 54
                                      },
                                      "end": {
                                        "line": 150,
                                        "column": 69
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 5773,
                                      "end": 5786,
                                      "loc": {
                                        "start": {
                                          "line": 150,
                                          "column": 54
                                        },
                                        "end": {
                                          "line": 150,
                                          "column": 67
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 5773,
                                        "end": 5777,
                                        "loc": {
                                          "start": {
                                            "line": 150,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 150,
                                            "column": 58
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 5778,
                                        "end": 5786,
                                        "loc": {
                                          "start": {
                                            "line": 150,
                                            "column": 59
                                          },
                                          "end": {
                                            "line": 150,
                                            "column": 67
                                          }
                                        },
                                        "name": "position"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 5787,
                                      "end": 5788,
                                      "loc": {
                                        "start": {
                                          "line": 150,
                                          "column": 68
                                        },
                                        "end": {
                                          "line": 150,
                                          "column": 69
                                        }
                                      },
                                      "name": "y"
                                    },
                                    "computed": false
                                  }
                                ]
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 5804,
              "end": 5944,
              "loc": {
                "start": {
                  "line": 153,
                  "column": 4
                },
                "end": {
                  "line": 157,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 5804,
                "end": 5818,
                "loc": {
                  "start": {
                    "line": 153,
                    "column": 4
                  },
                  "end": {
                    "line": 153,
                    "column": 18
                  }
                },
                "name": "applyStateDiff"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 5818,
                "end": 5944,
                "loc": {
                  "start": {
                    "line": 153,
                    "column": 18
                  },
                  "end": {
                    "line": 157,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 5819,
                    "end": 5828,
                    "loc": {
                      "start": {
                        "line": 153,
                        "column": 19
                      },
                      "end": {
                        "line": 153,
                        "column": 28
                      }
                    },
                    "name": "stateDiff"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 5830,
                  "end": 5944,
                  "loc": {
                    "start": {
                      "line": 153,
                      "column": 30
                    },
                    "end": {
                      "line": 157,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 5840,
                      "end": 5938,
                      "loc": {
                        "start": {
                          "line": 154,
                          "column": 8
                        },
                        "end": {
                          "line": 156,
                          "column": 17
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 5840,
                        "end": 5937,
                        "loc": {
                          "start": {
                            "line": 154,
                            "column": 8
                          },
                          "end": {
                            "line": 156,
                            "column": 16
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 5840,
                          "end": 5857,
                          "loc": {
                            "start": {
                              "line": 154,
                              "column": 8
                            },
                            "end": {
                              "line": 154,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 5840,
                            "end": 5849,
                            "loc": {
                              "start": {
                                "line": 154,
                                "column": 8
                              },
                              "end": {
                                "line": 154,
                                "column": 17
                              }
                            },
                            "name": "stateDiff"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 5850,
                            "end": 5857,
                            "loc": {
                              "start": {
                                "line": 154,
                                "column": 18
                              },
                              "end": {
                                "line": 154,
                                "column": 25
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "FunctionExpression",
                            "start": 5858,
                            "end": 5930,
                            "loc": {
                              "start": {
                                "line": 154,
                                "column": 26
                              },
                              "end": {
                                "line": 156,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 5867,
                                "end": 5872,
                                "loc": {
                                  "start": {
                                    "line": 154,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 154,
                                    "column": 40
                                  }
                                },
                                "name": "value"
                              },
                              {
                                "type": "Identifier",
                                "start": 5874,
                                "end": 5877,
                                "loc": {
                                  "start": {
                                    "line": 154,
                                    "column": 42
                                  },
                                  "end": {
                                    "line": 154,
                                    "column": 45
                                  }
                                },
                                "name": "key"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 5879,
                              "end": 5930,
                              "loc": {
                                "start": {
                                  "line": 154,
                                  "column": 47
                                },
                                "end": {
                                  "line": 156,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 5893,
                                  "end": 5920,
                                  "loc": {
                                    "start": {
                                      "line": 155,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 155,
                                      "column": 39
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 5893,
                                    "end": 5919,
                                    "loc": {
                                      "start": {
                                        "line": 155,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 155,
                                        "column": 38
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 5893,
                                      "end": 5911,
                                      "loc": {
                                        "start": {
                                          "line": 155,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 155,
                                          "column": 30
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 5893,
                                        "end": 5906,
                                        "loc": {
                                          "start": {
                                            "line": 155,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 155,
                                            "column": 25
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 5893,
                                          "end": 5897,
                                          "loc": {
                                            "start": {
                                              "line": 155,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 155,
                                              "column": 16
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 5898,
                                          "end": 5906,
                                          "loc": {
                                            "start": {
                                              "line": 155,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 155,
                                              "column": 25
                                            }
                                          },
                                          "name": "position"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 5907,
                                        "end": 5910,
                                        "loc": {
                                          "start": {
                                            "line": 155,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 155,
                                            "column": 29
                                          }
                                        },
                                        "name": "key"
                                      },
                                      "computed": true
                                    },
                                    "right": {
                                      "type": "Identifier",
                                      "start": 5914,
                                      "end": 5919,
                                      "loc": {
                                        "start": {
                                          "line": 155,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 155,
                                          "column": 38
                                        }
                                      },
                                      "name": "value"
                                    }
                                  }
                                }
                              ]
                            }
                          },
                          {
                            "type": "ThisExpression",
                            "start": 5932,
                            "end": 5936,
                            "loc": {
                              "start": {
                                "line": 156,
                                "column": 11
                              },
                              "end": {
                                "line": 156,
                                "column": 15
                              }
                            }
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 5950,
              "end": 6145,
              "loc": {
                "start": {
                  "line": 159,
                  "column": 4
                },
                "end": {
                  "line": 165,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 5950,
                "end": 5962,
                "loc": {
                  "start": {
                    "line": 159,
                    "column": 4
                  },
                  "end": {
                    "line": 159,
                    "column": 16
                  }
                },
                "name": "addStateDiff"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 5962,
                "end": 6145,
                "loc": {
                  "start": {
                    "line": 159,
                    "column": 16
                  },
                  "end": {
                    "line": 165,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 5963,
                    "end": 5972,
                    "loc": {
                      "start": {
                        "line": 159,
                        "column": 17
                      },
                      "end": {
                        "line": 159,
                        "column": 26
                      }
                    },
                    "name": "stateDiff"
                  },
                  {
                    "type": "Identifier",
                    "start": 5974,
                    "end": 5979,
                    "loc": {
                      "start": {
                        "line": 159,
                        "column": 28
                      },
                      "end": {
                        "line": 159,
                        "column": 33
                      }
                    },
                    "name": "alpha"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 5981,
                  "end": 6145,
                  "loc": {
                    "start": {
                      "line": 159,
                      "column": 35
                    },
                    "end": {
                      "line": 165,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 5991,
                      "end": 6022,
                      "loc": {
                        "start": {
                          "line": 160,
                          "column": 8
                        },
                        "end": {
                          "line": 160,
                          "column": 39
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 5995,
                        "end": 6013,
                        "loc": {
                          "start": {
                            "line": 160,
                            "column": 12
                          },
                          "end": {
                            "line": 160,
                            "column": 30
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 5995,
                          "end": 6004,
                          "loc": {
                            "start": {
                              "line": 160,
                              "column": 12
                            },
                            "end": {
                              "line": 160,
                              "column": 21
                            }
                          },
                          "name": "stateDiff"
                        },
                        "operator": "===",
                        "right": {
                          "type": "Literal",
                          "start": 6009,
                          "end": 6013,
                          "loc": {
                            "start": {
                              "line": 160,
                              "column": 26
                            },
                            "end": {
                              "line": 160,
                              "column": 30
                            }
                          },
                          "value": null,
                          "rawValue": null,
                          "raw": "null"
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 6015,
                        "end": 6022,
                        "loc": {
                          "start": {
                            "line": 160,
                            "column": 32
                          },
                          "end": {
                            "line": 160,
                            "column": 39
                          }
                        },
                        "argument": null
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 6032,
                      "end": 6139,
                      "loc": {
                        "start": {
                          "line": 162,
                          "column": 8
                        },
                        "end": {
                          "line": 164,
                          "column": 17
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 6032,
                        "end": 6138,
                        "loc": {
                          "start": {
                            "line": 162,
                            "column": 8
                          },
                          "end": {
                            "line": 164,
                            "column": 16
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 6032,
                          "end": 6049,
                          "loc": {
                            "start": {
                              "line": 162,
                              "column": 8
                            },
                            "end": {
                              "line": 162,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 6032,
                            "end": 6041,
                            "loc": {
                              "start": {
                                "line": 162,
                                "column": 8
                              },
                              "end": {
                                "line": 162,
                                "column": 17
                              }
                            },
                            "name": "stateDiff"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6042,
                            "end": 6049,
                            "loc": {
                              "start": {
                                "line": 162,
                                "column": 18
                              },
                              "end": {
                                "line": 162,
                                "column": 25
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "FunctionExpression",
                            "start": 6050,
                            "end": 6131,
                            "loc": {
                              "start": {
                                "line": 162,
                                "column": 26
                              },
                              "end": {
                                "line": 164,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 6059,
                                "end": 6064,
                                "loc": {
                                  "start": {
                                    "line": 162,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 162,
                                    "column": 40
                                  }
                                },
                                "name": "value"
                              },
                              {
                                "type": "Identifier",
                                "start": 6066,
                                "end": 6069,
                                "loc": {
                                  "start": {
                                    "line": 162,
                                    "column": 42
                                  },
                                  "end": {
                                    "line": 162,
                                    "column": 45
                                  }
                                },
                                "name": "key"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 6071,
                              "end": 6131,
                              "loc": {
                                "start": {
                                  "line": 162,
                                  "column": 47
                                },
                                "end": {
                                  "line": 164,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 6085,
                                  "end": 6121,
                                  "loc": {
                                    "start": {
                                      "line": 163,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 163,
                                      "column": 48
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 6085,
                                    "end": 6120,
                                    "loc": {
                                      "start": {
                                        "line": 163,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 163,
                                        "column": 47
                                      }
                                    },
                                    "operator": "+=",
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 6085,
                                      "end": 6103,
                                      "loc": {
                                        "start": {
                                          "line": 163,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 163,
                                          "column": 30
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 6085,
                                        "end": 6098,
                                        "loc": {
                                          "start": {
                                            "line": 163,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 163,
                                            "column": 25
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 6085,
                                          "end": 6089,
                                          "loc": {
                                            "start": {
                                              "line": 163,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 163,
                                              "column": 16
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 6090,
                                          "end": 6098,
                                          "loc": {
                                            "start": {
                                              "line": 163,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 163,
                                              "column": 25
                                            }
                                          },
                                          "name": "position"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 6099,
                                        "end": 6102,
                                        "loc": {
                                          "start": {
                                            "line": 163,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 163,
                                            "column": 29
                                          }
                                        },
                                        "name": "key"
                                      },
                                      "computed": true
                                    },
                                    "right": {
                                      "type": "BinaryExpression",
                                      "start": 6107,
                                      "end": 6120,
                                      "loc": {
                                        "start": {
                                          "line": 163,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 163,
                                          "column": 47
                                        }
                                      },
                                      "left": {
                                        "type": "Identifier",
                                        "start": 6107,
                                        "end": 6112,
                                        "loc": {
                                          "start": {
                                            "line": 163,
                                            "column": 34
                                          },
                                          "end": {
                                            "line": 163,
                                            "column": 39
                                          }
                                        },
                                        "name": "value"
                                      },
                                      "operator": "*",
                                      "right": {
                                        "type": "Identifier",
                                        "start": 6115,
                                        "end": 6120,
                                        "loc": {
                                          "start": {
                                            "line": 163,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 163,
                                            "column": 47
                                          }
                                        },
                                        "name": "alpha"
                                      }
                                    }
                                  }
                                }
                              ]
                            }
                          },
                          {
                            "type": "ThisExpression",
                            "start": 6133,
                            "end": 6137,
                            "loc": {
                              "start": {
                                "line": 164,
                                "column": 11
                              },
                              "end": {
                                "line": 164,
                                "column": 15
                              }
                            }
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 6151,
              "end": 6286,
              "loc": {
                "start": {
                  "line": 167,
                  "column": 4
                },
                "end": {
                  "line": 169,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 6151,
                "end": 6169,
                "loc": {
                  "start": {
                    "line": 167,
                    "column": 4
                  },
                  "end": {
                    "line": 167,
                    "column": 22
                  }
                },
                "name": "prepareAddOnServer"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 6169,
                "end": 6286,
                "loc": {
                  "start": {
                    "line": 167,
                    "column": 22
                  },
                  "end": {
                    "line": 169,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 6170,
                    "end": 6176,
                    "loc": {
                      "start": {
                        "line": 167,
                        "column": 23
                      },
                      "end": {
                        "line": 167,
                        "column": 29
                      }
                    },
                    "name": "sketch"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 6178,
                  "end": 6286,
                  "loc": {
                    "start": {
                      "line": 167,
                      "column": 31
                    },
                    "end": {
                      "line": 169,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 6188,
                      "end": 6280,
                      "loc": {
                        "start": {
                          "line": 168,
                          "column": 8
                        },
                        "end": {
                          "line": 168,
                          "column": 100
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 6195,
                        "end": 6279,
                        "loc": {
                          "start": {
                            "line": 168,
                            "column": 15
                          },
                          "end": {
                            "line": 168,
                            "column": 99
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 6195,
                          "end": 6264,
                          "loc": {
                            "start": {
                              "line": 168,
                              "column": 15
                            },
                            "end": {
                              "line": 168,
                              "column": 84
                            }
                          },
                          "object": {
                            "type": "CallExpression",
                            "start": 6195,
                            "end": 6259,
                            "loc": {
                              "start": {
                                "line": 168,
                                "column": 15
                              },
                              "end": {
                                "line": 168,
                                "column": 79
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 6195,
                              "end": 6215,
                              "loc": {
                                "start": {
                                  "line": 168,
                                  "column": 15
                                },
                                "end": {
                                  "line": 168,
                                  "column": 35
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 6195,
                                "end": 6204,
                                "loc": {
                                  "start": {
                                    "line": 168,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 168,
                                    "column": 24
                                  }
                                },
                                "name": "Statement"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6205,
                                "end": 6215,
                                "loc": {
                                  "start": {
                                    "line": 168,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 168,
                                    "column": 35
                                  }
                                },
                                "name": "JSONExport"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "CallExpression",
                                "start": 6216,
                                "end": 6258,
                                "loc": {
                                  "start": {
                                    "line": 168,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 168,
                                    "column": 78
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 6216,
                                  "end": 6235,
                                  "loc": {
                                    "start": {
                                      "line": 168,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 168,
                                      "column": 55
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 6216,
                                    "end": 6226,
                                    "loc": {
                                      "start": {
                                        "line": 168,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 168,
                                        "column": 46
                                      }
                                    },
                                    "name": "Expression"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 6227,
                                    "end": 6235,
                                    "loc": {
                                      "start": {
                                        "line": 168,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 168,
                                        "column": 55
                                      }
                                    },
                                    "name": "AddPoint"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 6236,
                                    "end": 6242,
                                    "loc": {
                                      "start": {
                                        "line": 168,
                                        "column": 56
                                      },
                                      "end": {
                                        "line": 168,
                                        "column": 62
                                      }
                                    },
                                    "name": "sketch"
                                  },
                                  {
                                    "type": "MemberExpression",
                                    "start": 6244,
                                    "end": 6257,
                                    "loc": {
                                      "start": {
                                        "line": 168,
                                        "column": 64
                                      },
                                      "end": {
                                        "line": 168,
                                        "column": 77
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 6244,
                                      "end": 6248,
                                      "loc": {
                                        "start": {
                                          "line": 168,
                                          "column": 64
                                        },
                                        "end": {
                                          "line": 168,
                                          "column": 68
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 6249,
                                      "end": 6257,
                                      "loc": {
                                        "start": {
                                          "line": 168,
                                          "column": 69
                                        },
                                        "end": {
                                          "line": 168,
                                          "column": 77
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  }
                                ]
                              }
                            ]
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6260,
                            "end": 6264,
                            "loc": {
                              "start": {
                                "line": 168,
                                "column": 80
                              },
                              "end": {
                                "line": 168,
                                "column": 84
                              }
                            },
                            "name": "then"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 6265,
                            "end": 6278,
                            "loc": {
                              "start": {
                                "line": 168,
                                "column": 85
                              },
                              "end": {
                                "line": 168,
                                "column": 98
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 6265,
                              "end": 6272,
                              "loc": {
                                "start": {
                                  "line": 168,
                                  "column": 85
                                },
                                "end": {
                                  "line": 168,
                                  "column": 92
                                }
                              },
                              "name": "parseTo"
                            },
                            "arguments": [
                              {
                                "type": "ThisExpression",
                                "start": 6273,
                                "end": 6277,
                                "loc": {
                                  "start": {
                                    "line": 168,
                                    "column": 93
                                  },
                                  "end": {
                                    "line": 168,
                                    "column": 97
                                  }
                                }
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 6292,
              "end": 6485,
              "loc": {
                "start": {
                  "line": 171,
                  "column": 4
                },
                "end": {
                  "line": 177,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 6292,
                "end": 6313,
                "loc": {
                  "start": {
                    "line": 171,
                    "column": 4
                  },
                  "end": {
                    "line": 171,
                    "column": 25
                  }
                },
                "name": "prepareUpdateToServer"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 6313,
                "end": 6485,
                "loc": {
                  "start": {
                    "line": 171,
                    "column": 25
                  },
                  "end": {
                    "line": 177,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 6314,
                    "end": 6320,
                    "loc": {
                      "start": {
                        "line": 171,
                        "column": 26
                      },
                      "end": {
                        "line": 171,
                        "column": 32
                      }
                    },
                    "name": "sketch"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 6322,
                  "end": 6485,
                  "loc": {
                    "start": {
                      "line": 171,
                      "column": 34
                    },
                    "end": {
                      "line": 177,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 6332,
                      "end": 6479,
                      "loc": {
                        "start": {
                          "line": 172,
                          "column": 8
                        },
                        "end": {
                          "line": 176,
                          "column": 31
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 6339,
                        "end": 6478,
                        "loc": {
                          "start": {
                            "line": 172,
                            "column": 15
                          },
                          "end": {
                            "line": 176,
                            "column": 30
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 6339,
                          "end": 6463,
                          "loc": {
                            "start": {
                              "line": 172,
                              "column": 15
                            },
                            "end": {
                              "line": 176,
                              "column": 15
                            }
                          },
                          "object": {
                            "type": "CallExpression",
                            "start": 6339,
                            "end": 6458,
                            "loc": {
                              "start": {
                                "line": 172,
                                "column": 15
                              },
                              "end": {
                                "line": 176,
                                "column": 10
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 6339,
                              "end": 6359,
                              "loc": {
                                "start": {
                                  "line": 172,
                                  "column": 15
                                },
                                "end": {
                                  "line": 172,
                                  "column": 35
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 6339,
                                "end": 6348,
                                "loc": {
                                  "start": {
                                    "line": 172,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 172,
                                    "column": 24
                                  }
                                },
                                "name": "Statement"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6349,
                                "end": 6359,
                                "loc": {
                                  "start": {
                                    "line": 172,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 172,
                                    "column": 35
                                  }
                                },
                                "name": "JSONExport"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "CallExpression",
                                "start": 6360,
                                "end": 6457,
                                "loc": {
                                  "start": {
                                    "line": 172,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 176,
                                    "column": 9
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 6360,
                                  "end": 6382,
                                  "loc": {
                                    "start": {
                                      "line": 172,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 172,
                                      "column": 58
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 6360,
                                    "end": 6370,
                                    "loc": {
                                      "start": {
                                        "line": 172,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 172,
                                        "column": 46
                                      }
                                    },
                                    "name": "Expression"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 6371,
                                    "end": 6382,
                                    "loc": {
                                      "start": {
                                        "line": 172,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 172,
                                        "column": 58
                                      }
                                    },
                                    "name": "UpdatePoint"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 6396,
                                    "end": 6402,
                                    "loc": {
                                      "start": {
                                        "line": 173,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 173,
                                        "column": 18
                                      }
                                    },
                                    "name": "sketch"
                                  },
                                  {
                                    "type": "ThisExpression",
                                    "start": 6416,
                                    "end": 6420,
                                    "loc": {
                                      "start": {
                                        "line": 174,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 174,
                                        "column": 16
                                      }
                                    }
                                  },
                                  {
                                    "type": "MemberExpression",
                                    "start": 6434,
                                    "end": 6447,
                                    "loc": {
                                      "start": {
                                        "line": 175,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 175,
                                        "column": 25
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 6434,
                                      "end": 6438,
                                      "loc": {
                                        "start": {
                                          "line": 175,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 175,
                                          "column": 16
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 6439,
                                      "end": 6447,
                                      "loc": {
                                        "start": {
                                          "line": 175,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 175,
                                          "column": 25
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  }
                                ]
                              }
                            ]
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6459,
                            "end": 6463,
                            "loc": {
                              "start": {
                                "line": 176,
                                "column": 11
                              },
                              "end": {
                                "line": 176,
                                "column": 15
                              }
                            },
                            "name": "then"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 6464,
                            "end": 6477,
                            "loc": {
                              "start": {
                                "line": 176,
                                "column": 16
                              },
                              "end": {
                                "line": 176,
                                "column": 29
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 6464,
                              "end": 6471,
                              "loc": {
                                "start": {
                                  "line": 176,
                                  "column": 16
                                },
                                "end": {
                                  "line": 176,
                                  "column": 23
                                }
                              },
                              "name": "parseTo"
                            },
                            "arguments": [
                              {
                                "type": "ThisExpression",
                                "start": 6472,
                                "end": 6476,
                                "loc": {
                                  "start": {
                                    "line": 176,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 176,
                                    "column": 28
                                  }
                                }
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 6491,
              "end": 6599,
              "loc": {
                "start": {
                  "line": 179,
                  "column": 4
                },
                "end": {
                  "line": 181,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 6491,
                "end": 6512,
                "loc": {
                  "start": {
                    "line": 179,
                    "column": 4
                  },
                  "end": {
                    "line": 179,
                    "column": 25
                  }
                },
                "name": "prepareRemoveOnServer"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 6512,
                "end": 6599,
                "loc": {
                  "start": {
                    "line": 179,
                    "column": 25
                  },
                  "end": {
                    "line": 181,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 6513,
                    "end": 6519,
                    "loc": {
                      "start": {
                        "line": 179,
                        "column": 26
                      },
                      "end": {
                        "line": 179,
                        "column": 32
                      }
                    },
                    "name": "sketch"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 6521,
                  "end": 6599,
                  "loc": {
                    "start": {
                      "line": 179,
                      "column": 34
                    },
                    "end": {
                      "line": 181,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 6531,
                      "end": 6593,
                      "loc": {
                        "start": {
                          "line": 180,
                          "column": 8
                        },
                        "end": {
                          "line": 180,
                          "column": 70
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 6538,
                        "end": 6592,
                        "loc": {
                          "start": {
                            "line": 180,
                            "column": 15
                          },
                          "end": {
                            "line": 180,
                            "column": 69
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 6538,
                          "end": 6554,
                          "loc": {
                            "start": {
                              "line": 180,
                              "column": 15
                            },
                            "end": {
                              "line": 180,
                              "column": 31
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 6538,
                            "end": 6547,
                            "loc": {
                              "start": {
                                "line": 180,
                                "column": 15
                              },
                              "end": {
                                "line": 180,
                                "column": 24
                              }
                            },
                            "name": "Statement"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6548,
                            "end": 6554,
                            "loc": {
                              "start": {
                                "line": 180,
                                "column": 25
                              },
                              "end": {
                                "line": 180,
                                "column": 31
                              }
                            },
                            "name": "Return"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 6555,
                            "end": 6591,
                            "loc": {
                              "start": {
                                "line": 180,
                                "column": 32
                              },
                              "end": {
                                "line": 180,
                                "column": 68
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 6555,
                              "end": 6577,
                              "loc": {
                                "start": {
                                  "line": 180,
                                  "column": 32
                                },
                                "end": {
                                  "line": 180,
                                  "column": 54
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 6555,
                                "end": 6565,
                                "loc": {
                                  "start": {
                                    "line": 180,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 180,
                                    "column": 42
                                  }
                                },
                                "name": "Expression"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6566,
                                "end": 6577,
                                "loc": {
                                  "start": {
                                    "line": 180,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 180,
                                    "column": 54
                                  }
                                },
                                "name": "RemovePoint"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 6578,
                                "end": 6584,
                                "loc": {
                                  "start": {
                                    "line": 180,
                                    "column": 55
                                  },
                                  "end": {
                                    "line": 180,
                                    "column": 61
                                  }
                                },
                                "name": "sketch"
                              },
                              {
                                "type": "ThisExpression",
                                "start": 6586,
                                "end": 6590,
                                "loc": {
                                  "start": {
                                    "line": 180,
                                    "column": 63
                                  },
                                  "end": {
                                    "line": 180,
                                    "column": 67
                                  }
                                }
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            }
          ]
        },
        "leadingComments": [
          {
            "type": "CommentLine",
            "value": "================================ Sketch.Point =========================================",
            "start": 3937,
            "end": 4026,
            "loc": {
              "start": {
                "line": 91,
                "column": 0
              },
              "end": {
                "line": 91,
                "column": 89
              }
            },
            "range": [
              3937,
              4026
            ]
          }
        ],
        "trailingComments": []
      },
      "specifiers": [],
      "source": null,
      "leadingComments": [
        {
          "type": "CommentLine",
          "value": "================================ Sketch.Point =========================================",
          "start": 3937,
          "end": 4026,
          "loc": {
            "start": {
              "line": 91,
              "column": 0
            },
            "end": {
              "line": 91,
              "column": 89
            }
          },
          "range": [
            3937,
            4026
          ]
        }
      ]
    },
    {
      "type": "ExpressionStatement",
      "start": 6602,
      "end": 6650,
      "loc": {
        "start": {
          "line": 183,
          "column": 0
        },
        "end": {
          "line": 183,
          "column": 48
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 6602,
        "end": 6649,
        "loc": {
          "start": {
            "line": 183,
            "column": 0
          },
          "end": {
            "line": 183,
            "column": 47
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 6602,
          "end": 6641,
          "loc": {
            "start": {
              "line": 183,
              "column": 0
            },
            "end": {
              "line": 183,
              "column": 39
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 6602,
            "end": 6629,
            "loc": {
              "start": {
                "line": 183,
                "column": 0
              },
              "end": {
                "line": 183,
                "column": 27
              }
            },
            "object": {
              "type": "Identifier",
              "start": 6602,
              "end": 6616,
              "loc": {
                "start": {
                  "line": 183,
                  "column": 0
                },
                "end": {
                  "line": 183,
                  "column": 14
                }
              },
              "name": "ClassCadObject"
            },
            "property": {
              "type": "Identifier",
              "start": 6617,
              "end": 6629,
              "loc": {
                "start": {
                  "line": 183,
                  "column": 15
                },
                "end": {
                  "line": 183,
                  "column": 27
                }
              },
              "name": "classMapping"
            },
            "computed": false
          },
          "property": {
            "type": "Literal",
            "start": 6630,
            "end": 6640,
            "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": 6644,
          "end": 6649,
          "loc": {
            "start": {
              "line": 183,
              "column": 42
            },
            "end": {
              "line": 183,
              "column": 47
            }
          },
          "name": "Point"
        }
      },
      "trailingComments": [
        {
          "type": "CommentLine",
          "value": "================================ Sketch.Line =========================================",
          "start": 6652,
          "end": 6740,
          "loc": {
            "start": {
              "line": 185,
              "column": 0
            },
            "end": {
              "line": 185,
              "column": 88
            }
          },
          "range": [
            6652,
            6740
          ]
        }
      ]
    },
    {
      "type": "ExportNamedDeclaration",
      "start": 6741,
      "end": 13643,
      "loc": {
        "start": {
          "line": 186,
          "column": 0
        },
        "end": {
          "line": 366,
          "column": 1
        }
      },
      "declaration": {
        "type": "ClassDeclaration",
        "start": 6748,
        "end": 13643,
        "loc": {
          "start": {
            "line": 186,
            "column": 7
          },
          "end": {
            "line": 366,
            "column": 1
          }
        },
        "id": {
          "type": "Identifier",
          "start": 6754,
          "end": 6758,
          "loc": {
            "start": {
              "line": 186,
              "column": 13
            },
            "end": {
              "line": 186,
              "column": 17
            }
          },
          "name": "Line",
          "leadingComments": null
        },
        "superClass": {
          "type": "Identifier",
          "start": 6767,
          "end": 6782,
          "loc": {
            "start": {
              "line": 186,
              "column": 26
            },
            "end": {
              "line": 186,
              "column": 41
            }
          },
          "name": "GeometricObject"
        },
        "body": {
          "type": "ClassBody",
          "start": 6783,
          "end": 13643,
          "loc": {
            "start": {
              "line": 186,
              "column": 42
            },
            "end": {
              "line": 366,
              "column": 1
            }
          },
          "body": [
            {
              "type": "MethodDefinition",
              "start": 6789,
              "end": 7759,
              "loc": {
                "start": {
                  "line": 187,
                  "column": 4
                },
                "end": {
                  "line": 208,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 6789,
                "end": 6800,
                "loc": {
                  "start": {
                    "line": 187,
                    "column": 4
                  },
                  "end": {
                    "line": 187,
                    "column": 15
                  }
                },
                "name": "constructor"
              },
              "static": false,
              "kind": "constructor",
              "value": {
                "type": "FunctionExpression",
                "start": 6800,
                "end": 7759,
                "loc": {
                  "start": {
                    "line": 187,
                    "column": 15
                  },
                  "end": {
                    "line": 208,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 6803,
                  "end": 7759,
                  "loc": {
                    "start": {
                      "line": 187,
                      "column": 18
                    },
                    "end": {
                      "line": 208,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 6813,
                      "end": 6821,
                      "loc": {
                        "start": {
                          "line": 188,
                          "column": 8
                        },
                        "end": {
                          "line": 188,
                          "column": 16
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 6813,
                        "end": 6820,
                        "loc": {
                          "start": {
                            "line": 188,
                            "column": 8
                          },
                          "end": {
                            "line": 188,
                            "column": 15
                          }
                        },
                        "callee": {
                          "type": "Super",
                          "start": 6813,
                          "end": 6818,
                          "loc": {
                            "start": {
                              "line": 188,
                              "column": 8
                            },
                            "end": {
                              "line": 188,
                              "column": 13
                            }
                          }
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 6830,
                      "end": 6849,
                      "loc": {
                        "start": {
                          "line": 189,
                          "column": 8
                        },
                        "end": {
                          "line": 189,
                          "column": 27
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 6830,
                        "end": 6848,
                        "loc": {
                          "start": {
                            "line": 189,
                            "column": 8
                          },
                          "end": {
                            "line": 189,
                            "column": 26
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 6830,
                          "end": 6839,
                          "loc": {
                            "start": {
                              "line": 189,
                              "column": 8
                            },
                            "end": {
                              "line": 189,
                              "column": 17
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 6830,
                            "end": 6834,
                            "loc": {
                              "start": {
                                "line": 189,
                                "column": 8
                              },
                              "end": {
                                "line": 189,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6835,
                            "end": 6839,
                            "loc": {
                              "start": {
                                "line": 189,
                                "column": 13
                              },
                              "end": {
                                "line": 189,
                                "column": 17
                              }
                            },
                            "name": "type"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 6842,
                          "end": 6848,
                          "loc": {
                            "start": {
                              "line": 189,
                              "column": 20
                            },
                            "end": {
                              "line": 189,
                              "column": 26
                            }
                          },
                          "value": "Line",
                          "rawValue": "Line",
                          "raw": "'Line'"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 6859,
                      "end": 7127,
                      "loc": {
                        "start": {
                          "line": 191,
                          "column": 8
                        },
                        "end": {
                          "line": 195,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 6859,
                        "end": 7126,
                        "loc": {
                          "start": {
                            "line": 191,
                            "column": 8
                          },
                          "end": {
                            "line": 195,
                            "column": 10
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 6859,
                          "end": 6868,
                          "loc": {
                            "start": {
                              "line": 191,
                              "column": 8
                            },
                            "end": {
                              "line": 191,
                              "column": 17
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 6859,
                            "end": 6863,
                            "loc": {
                              "start": {
                                "line": 191,
                                "column": 8
                              },
                              "end": {
                                "line": 191,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6864,
                            "end": 6868,
                            "loc": {
                              "start": {
                                "line": 191,
                                "column": 13
                              },
                              "end": {
                                "line": 191,
                                "column": 17
                              }
                            },
                            "name": "mesh"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 6871,
                          "end": 7126,
                          "loc": {
                            "start": {
                              "line": 191,
                              "column": 20
                            },
                            "end": {
                              "line": 195,
                              "column": 10
                            }
                          },
                          "callee": {
                            "type": "Identifier",
                            "start": 6875,
                            "end": 6887,
                            "loc": {
                              "start": {
                                "line": 191,
                                "column": 24
                              },
                              "end": {
                                "line": 191,
                                "column": 36
                              }
                            },
                            "name": "InteractMesh"
                          },
                          "arguments": [
                            {
                              "type": "NewExpression",
                              "start": 6888,
                              "end": 6918,
                              "loc": {
                                "start": {
                                  "line": 191,
                                  "column": 37
                                },
                                "end": {
                                  "line": 191,
                                  "column": 67
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 6892,
                                "end": 6909,
                                "loc": {
                                  "start": {
                                    "line": 191,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 191,
                                    "column": 58
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 6892,
                                  "end": 6897,
                                  "loc": {
                                    "start": {
                                      "line": 191,
                                      "column": 41
                                    },
                                    "end": {
                                      "line": 191,
                                      "column": 46
                                    }
                                  },
                                  "name": "THREE"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 6898,
                                  "end": 6909,
                                  "loc": {
                                    "start": {
                                      "line": 191,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 191,
                                      "column": 58
                                    }
                                  },
                                  "name": "BoxGeometry"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 6910,
                                  "end": 6911,
                                  "loc": {
                                    "start": {
                                      "line": 191,
                                      "column": 59
                                    },
                                    "end": {
                                      "line": 191,
                                      "column": 60
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                },
                                {
                                  "type": "Literal",
                                  "start": 6913,
                                  "end": 6914,
                                  "loc": {
                                    "start": {
                                      "line": 191,
                                      "column": 62
                                    },
                                    "end": {
                                      "line": 191,
                                      "column": 63
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                },
                                {
                                  "type": "Literal",
                                  "start": 6916,
                                  "end": 6917,
                                  "loc": {
                                    "start": {
                                      "line": 191,
                                      "column": 65
                                    },
                                    "end": {
                                      "line": 191,
                                      "column": 66
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            },
                            {
                              "type": "NewExpression",
                              "start": 6920,
                              "end": 7125,
                              "loc": {
                                "start": {
                                  "line": 191,
                                  "column": 69
                                },
                                "end": {
                                  "line": 195,
                                  "column": 9
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 6924,
                                "end": 6947,
                                "loc": {
                                  "start": {
                                    "line": 191,
                                    "column": 73
                                  },
                                  "end": {
                                    "line": 191,
                                    "column": 96
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 6924,
                                  "end": 6929,
                                  "loc": {
                                    "start": {
                                      "line": 191,
                                      "column": 73
                                    },
                                    "end": {
                                      "line": 191,
                                      "column": 78
                                    }
                                  },
                                  "name": "THREE"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 6930,
                                  "end": 6947,
                                  "loc": {
                                    "start": {
                                      "line": 191,
                                      "column": 79
                                    },
                                    "end": {
                                      "line": 191,
                                      "column": 96
                                    }
                                  },
                                  "name": "MeshBasicMaterial"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ObjectExpression",
                                  "start": 6961,
                                  "end": 7115,
                                  "loc": {
                                    "start": {
                                      "line": 192,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 194,
                                      "column": 13
                                    }
                                  },
                                  "properties": [
                                    {
                                      "type": "Property",
                                      "start": 6962,
                                      "end": 6990,
                                      "loc": {
                                        "start": {
                                          "line": 192,
                                          "column": 13
                                        },
                                        "end": {
                                          "line": 192,
                                          "column": 41
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 6962,
                                        "end": 6967,
                                        "loc": {
                                          "start": {
                                            "line": 192,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 192,
                                            "column": 18
                                          }
                                        },
                                        "name": "color"
                                      },
                                      "value": {
                                        "type": "CallExpression",
                                        "start": 6969,
                                        "end": 6990,
                                        "loc": {
                                          "start": {
                                            "line": 192,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 192,
                                            "column": 41
                                          }
                                        },
                                        "callee": {
                                          "type": "Identifier",
                                          "start": 6969,
                                          "end": 6977,
                                          "loc": {
                                            "start": {
                                              "line": 192,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 192,
                                              "column": 28
                                            }
                                          },
                                          "name": "getColor"
                                        },
                                        "arguments": [
                                          {
                                            "type": "ThisExpression",
                                            "start": 6978,
                                            "end": 6982,
                                            "loc": {
                                              "start": {
                                                "line": 192,
                                                "column": 29
                                              },
                                              "end": {
                                                "line": 192,
                                                "column": 33
                                              }
                                            }
                                          },
                                          {
                                            "type": "Literal",
                                            "start": 6984,
                                            "end": 6989,
                                            "loc": {
                                              "start": {
                                                "line": 192,
                                                "column": 35
                                              },
                                              "end": {
                                                "line": 192,
                                                "column": 40
                                              }
                                            },
                                            "value": false,
                                            "rawValue": false,
                                            "raw": "false"
                                          }
                                        ]
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 6992,
                                      "end": 7014,
                                      "loc": {
                                        "start": {
                                          "line": 192,
                                          "column": 43
                                        },
                                        "end": {
                                          "line": 192,
                                          "column": 65
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 6992,
                                        "end": 6996,
                                        "loc": {
                                          "start": {
                                            "line": 192,
                                            "column": 43
                                          },
                                          "end": {
                                            "line": 192,
                                            "column": 47
                                          }
                                        },
                                        "name": "side"
                                      },
                                      "value": {
                                        "type": "MemberExpression",
                                        "start": 6998,
                                        "end": 7014,
                                        "loc": {
                                          "start": {
                                            "line": 192,
                                            "column": 49
                                          },
                                          "end": {
                                            "line": 192,
                                            "column": 65
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 6998,
                                          "end": 7003,
                                          "loc": {
                                            "start": {
                                              "line": 192,
                                              "column": 49
                                            },
                                            "end": {
                                              "line": 192,
                                              "column": 54
                                            }
                                          },
                                          "name": "THREE"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 7004,
                                          "end": 7014,
                                          "loc": {
                                            "start": {
                                              "line": 192,
                                              "column": 55
                                            },
                                            "end": {
                                              "line": 192,
                                              "column": 65
                                            }
                                          },
                                          "name": "DoubleSide"
                                        },
                                        "computed": false
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 7032,
                                      "end": 7051,
                                      "loc": {
                                        "start": {
                                          "line": 193,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 193,
                                          "column": 35
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 7032,
                                        "end": 7045,
                                        "loc": {
                                          "start": {
                                            "line": 193,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 193,
                                            "column": 29
                                          }
                                        },
                                        "name": "polygonOffset"
                                      },
                                      "value": {
                                        "type": "Literal",
                                        "start": 7047,
                                        "end": 7051,
                                        "loc": {
                                          "start": {
                                            "line": 193,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 193,
                                            "column": 35
                                          }
                                        },
                                        "value": true,
                                        "rawValue": true,
                                        "raw": "true"
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 7053,
                                      "end": 7076,
                                      "loc": {
                                        "start": {
                                          "line": 193,
                                          "column": 37
                                        },
                                        "end": {
                                          "line": 193,
                                          "column": 60
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 7053,
                                        "end": 7072,
                                        "loc": {
                                          "start": {
                                            "line": 193,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 193,
                                            "column": 56
                                          }
                                        },
                                        "name": "polygonOffsetFactor"
                                      },
                                      "value": {
                                        "type": "UnaryExpression",
                                        "start": 7074,
                                        "end": 7076,
                                        "loc": {
                                          "start": {
                                            "line": 193,
                                            "column": 58
                                          },
                                          "end": {
                                            "line": 193,
                                            "column": 60
                                          }
                                        },
                                        "operator": "-",
                                        "prefix": true,
                                        "argument": {
                                          "type": "Literal",
                                          "start": 7075,
                                          "end": 7076,
                                          "loc": {
                                            "start": {
                                              "line": 193,
                                              "column": 59
                                            },
                                            "end": {
                                              "line": 193,
                                              "column": 60
                                            }
                                          },
                                          "value": 1,
                                          "rawValue": 1,
                                          "raw": "1"
                                        }
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 7078,
                                      "end": 7101,
                                      "loc": {
                                        "start": {
                                          "line": 193,
                                          "column": 62
                                        },
                                        "end": {
                                          "line": 193,
                                          "column": 85
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 7078,
                                        "end": 7096,
                                        "loc": {
                                          "start": {
                                            "line": 193,
                                            "column": 62
                                          },
                                          "end": {
                                            "line": 193,
                                            "column": 80
                                          }
                                        },
                                        "name": "polygonOffsetUnits"
                                      },
                                      "value": {
                                        "type": "UnaryExpression",
                                        "start": 7099,
                                        "end": 7101,
                                        "loc": {
                                          "start": {
                                            "line": 193,
                                            "column": 83
                                          },
                                          "end": {
                                            "line": 193,
                                            "column": 85
                                          }
                                        },
                                        "operator": "-",
                                        "prefix": true,
                                        "argument": {
                                          "type": "Literal",
                                          "start": 7100,
                                          "end": 7101,
                                          "loc": {
                                            "start": {
                                              "line": 193,
                                              "column": 84
                                            },
                                            "end": {
                                              "line": 193,
                                              "column": 85
                                            }
                                          },
                                          "value": 5,
                                          "rawValue": 5,
                                          "raw": "5"
                                        }
                                      },
                                      "kind": "init"
                                    }
                                  ]
                                }
                              ]
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 7136,
                      "end": 7162,
                      "loc": {
                        "start": {
                          "line": 196,
                          "column": 8
                        },
                        "end": {
                          "line": 196,
                          "column": 34
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 7136,
                        "end": 7161,
                        "loc": {
                          "start": {
                            "line": 196,
                            "column": 8
                          },
                          "end": {
                            "line": 196,
                            "column": 33
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 7136,
                          "end": 7149,
                          "loc": {
                            "start": {
                              "line": 196,
                              "column": 8
                            },
                            "end": {
                              "line": 196,
                              "column": 21
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 7136,
                            "end": 7140,
                            "loc": {
                              "start": {
                                "line": 196,
                                "column": 8
                              },
                              "end": {
                                "line": 196,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7141,
                            "end": 7149,
                            "loc": {
                              "start": {
                                "line": 196,
                                "column": 13
                              },
                              "end": {
                                "line": 196,
                                "column": 21
                              }
                            },
                            "name": "interact"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 7152,
                          "end": 7161,
                          "loc": {
                            "start": {
                              "line": 196,
                              "column": 24
                            },
                            "end": {
                              "line": 196,
                              "column": 33
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 7152,
                            "end": 7156,
                            "loc": {
                              "start": {
                                "line": 196,
                                "column": 24
                              },
                              "end": {
                                "line": 196,
                                "column": 28
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7157,
                            "end": 7161,
                            "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": 7163,
                          "end": 7204,
                          "loc": {
                            "start": {
                              "line": 196,
                              "column": 35
                            },
                            "end": {
                              "line": 196,
                              "column": 76
                            }
                          },
                          "range": [
                            7163,
                            7204
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 7213,
                      "end": 7254,
                      "loc": {
                        "start": {
                          "line": 197,
                          "column": 8
                        },
                        "end": {
                          "line": 197,
                          "column": 49
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 7213,
                        "end": 7253,
                        "loc": {
                          "start": {
                            "line": 197,
                            "column": 8
                          },
                          "end": {
                            "line": 197,
                            "column": 48
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 7213,
                          "end": 7224,
                          "loc": {
                            "start": {
                              "line": 197,
                              "column": 8
                            },
                            "end": {
                              "line": 197,
                              "column": 19
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 7213,
                            "end": 7217,
                            "loc": {
                              "start": {
                                "line": 197,
                                "column": 8
                              },
                              "end": {
                                "line": 197,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7218,
                            "end": 7224,
                            "loc": {
                              "start": {
                                "line": 197,
                                "column": 13
                              },
                              "end": {
                                "line": 197,
                                "column": 19
                              }
                            },
                            "name": "points"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "ArrayExpression",
                          "start": 7227,
                          "end": 7253,
                          "loc": {
                            "start": {
                              "line": 197,
                              "column": 22
                            },
                            "end": {
                              "line": 197,
                              "column": 48
                            }
                          },
                          "elements": [
                            {
                              "type": "NewExpression",
                              "start": 7228,
                              "end": 7239,
                              "loc": {
                                "start": {
                                  "line": 197,
                                  "column": 23
                                },
                                "end": {
                                  "line": 197,
                                  "column": 34
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 7232,
                                "end": 7237,
                                "loc": {
                                  "start": {
                                    "line": 197,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 197,
                                    "column": 32
                                  }
                                },
                                "name": "Point"
                              },
                              "arguments": []
                            },
                            {
                              "type": "NewExpression",
                              "start": 7241,
                              "end": 7252,
                              "loc": {
                                "start": {
                                  "line": 197,
                                  "column": 36
                                },
                                "end": {
                                  "line": 197,
                                  "column": 47
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 7245,
                                "end": 7250,
                                "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": 7163,
                          "end": 7204,
                          "loc": {
                            "start": {
                              "line": 196,
                              "column": 35
                            },
                            "end": {
                              "line": 196,
                              "column": 76
                            }
                          },
                          "range": [
                            7163,
                            7204
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 7263,
                      "end": 7298,
                      "loc": {
                        "start": {
                          "line": 198,
                          "column": 8
                        },
                        "end": {
                          "line": 198,
                          "column": 43
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 7263,
                        "end": 7297,
                        "loc": {
                          "start": {
                            "line": 198,
                            "column": 8
                          },
                          "end": {
                            "line": 198,
                            "column": 42
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 7263,
                          "end": 7282,
                          "loc": {
                            "start": {
                              "line": 198,
                              "column": 8
                            },
                            "end": {
                              "line": 198,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 7263,
                            "end": 7277,
                            "loc": {
                              "start": {
                                "line": 198,
                                "column": 8
                              },
                              "end": {
                                "line": 198,
                                "column": 22
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 7263,
                              "end": 7274,
                              "loc": {
                                "start": {
                                  "line": 198,
                                  "column": 8
                                },
                                "end": {
                                  "line": 198,
                                  "column": 19
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 7263,
                                "end": 7267,
                                "loc": {
                                  "start": {
                                    "line": 198,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 198,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 7268,
                                "end": 7274,
                                "loc": {
                                  "start": {
                                    "line": 198,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 198,
                                    "column": 19
                                  }
                                },
                                "name": "points"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Literal",
                              "start": 7275,
                              "end": 7276,
                              "loc": {
                                "start": {
                                  "line": 198,
                                  "column": 20
                                },
                                "end": {
                                  "line": 198,
                                  "column": 21
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            },
                            "computed": true
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7278,
                            "end": 7282,
                            "loc": {
                              "start": {
                                "line": 198,
                                "column": 23
                              },
                              "end": {
                                "line": 198,
                                "column": 27
                              }
                            },
                            "name": "name"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 7285,
                          "end": 7297,
                          "loc": {
                            "start": {
                              "line": 198,
                              "column": 30
                            },
                            "end": {
                              "line": 198,
                              "column": 42
                            }
                          },
                          "value": "startPoint",
                          "rawValue": "startPoint",
                          "raw": "'startPoint'"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 7307,
                      "end": 7340,
                      "loc": {
                        "start": {
                          "line": 199,
                          "column": 8
                        },
                        "end": {
                          "line": 199,
                          "column": 41
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 7307,
                        "end": 7339,
                        "loc": {
                          "start": {
                            "line": 199,
                            "column": 8
                          },
                          "end": {
                            "line": 199,
                            "column": 40
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 7307,
                          "end": 7326,
                          "loc": {
                            "start": {
                              "line": 199,
                              "column": 8
                            },
                            "end": {
                              "line": 199,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 7307,
                            "end": 7321,
                            "loc": {
                              "start": {
                                "line": 199,
                                "column": 8
                              },
                              "end": {
                                "line": 199,
                                "column": 22
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 7307,
                              "end": 7318,
                              "loc": {
                                "start": {
                                  "line": 199,
                                  "column": 8
                                },
                                "end": {
                                  "line": 199,
                                  "column": 19
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 7307,
                                "end": 7311,
                                "loc": {
                                  "start": {
                                    "line": 199,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 199,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 7312,
                                "end": 7318,
                                "loc": {
                                  "start": {
                                    "line": 199,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 199,
                                    "column": 19
                                  }
                                },
                                "name": "points"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Literal",
                              "start": 7319,
                              "end": 7320,
                              "loc": {
                                "start": {
                                  "line": 199,
                                  "column": 20
                                },
                                "end": {
                                  "line": 199,
                                  "column": 21
                                }
                              },
                              "value": 1,
                              "rawValue": 1,
                              "raw": "1"
                            },
                            "computed": true
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7322,
                            "end": 7326,
                            "loc": {
                              "start": {
                                "line": 199,
                                "column": 23
                              },
                              "end": {
                                "line": 199,
                                "column": 27
                              }
                            },
                            "name": "name"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 7329,
                          "end": 7339,
                          "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": 7349,
                          "end": 7425,
                          "loc": {
                            "start": {
                              "line": 200,
                              "column": 8
                            },
                            "end": {
                              "line": 200,
                              "column": 84
                            }
                          },
                          "range": [
                            7349,
                            7425
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 7434,
                      "end": 7597,
                      "loc": {
                        "start": {
                          "line": 201,
                          "column": 8
                        },
                        "end": {
                          "line": 204,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 7434,
                        "end": 7596,
                        "loc": {
                          "start": {
                            "line": 201,
                            "column": 8
                          },
                          "end": {
                            "line": 204,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 7434,
                          "end": 7453,
                          "loc": {
                            "start": {
                              "line": 201,
                              "column": 8
                            },
                            "end": {
                              "line": 201,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 7434,
                            "end": 7445,
                            "loc": {
                              "start": {
                                "line": 201,
                                "column": 8
                              },
                              "end": {
                                "line": 201,
                                "column": 19
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 7434,
                              "end": 7438,
                              "loc": {
                                "start": {
                                  "line": 201,
                                  "column": 8
                                },
                                "end": {
                                  "line": 201,
                                  "column": 12
                                }
                              },
                              "leadingComments": null
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7439,
                              "end": 7445,
                              "loc": {
                                "start": {
                                  "line": 201,
                                  "column": 13
                                },
                                "end": {
                                  "line": 201,
                                  "column": 19
                                }
                              },
                              "name": "points"
                            },
                            "computed": false,
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7446,
                            "end": 7453,
                            "loc": {
                              "start": {
                                "line": 201,
                                "column": 20
                              },
                              "end": {
                                "line": 201,
                                "column": 27
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 7454,
                            "end": 7595,
                            "loc": {
                              "start": {
                                "line": 201,
                                "column": 28
                              },
                              "end": {
                                "line": 204,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 7454,
                                "end": 7459,
                                "loc": {
                                  "start": {
                                    "line": 201,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 201,
                                    "column": 33
                                  }
                                },
                                "name": "point"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 7463,
                              "end": 7595,
                              "loc": {
                                "start": {
                                  "line": 201,
                                  "column": 37
                                },
                                "end": {
                                  "line": 204,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 7477,
                                  "end": 7527,
                                  "loc": {
                                    "start": {
                                      "line": 202,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 202,
                                      "column": 62
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 7477,
                                    "end": 7526,
                                    "loc": {
                                      "start": {
                                        "line": 202,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 202,
                                        "column": 61
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 7477,
                                      "end": 7485,
                                      "loc": {
                                        "start": {
                                          "line": 202,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 202,
                                          "column": 20
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 7477,
                                        "end": 7482,
                                        "loc": {
                                          "start": {
                                            "line": 202,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 202,
                                            "column": 17
                                          }
                                        },
                                        "name": "point"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 7483,
                                        "end": 7485,
                                        "loc": {
                                          "start": {
                                            "line": 202,
                                            "column": 18
                                          },
                                          "end": {
                                            "line": 202,
                                            "column": 20
                                          }
                                        },
                                        "name": "on"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Literal",
                                        "start": 7486,
                                        "end": 7493,
                                        "loc": {
                                          "start": {
                                            "line": 202,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 202,
                                            "column": 28
                                          }
                                        },
                                        "value": "moved",
                                        "rawValue": "moved",
                                        "raw": "'moved'"
                                      },
                                      {
                                        "type": "CallExpression",
                                        "start": 7495,
                                        "end": 7525,
                                        "loc": {
                                          "start": {
                                            "line": 202,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 202,
                                            "column": 60
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 7495,
                                          "end": 7519,
                                          "loc": {
                                            "start": {
                                              "line": 202,
                                              "column": 30
                                            },
                                            "end": {
                                              "line": 202,
                                              "column": 54
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 7495,
                                            "end": 7514,
                                            "loc": {
                                              "start": {
                                                "line": 202,
                                                "column": 30
                                              },
                                              "end": {
                                                "line": 202,
                                                "column": 49
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 7495,
                                              "end": 7499,
                                              "loc": {
                                                "start": {
                                                  "line": 202,
                                                  "column": 30
                                                },
                                                "end": {
                                                  "line": 202,
                                                  "column": 34
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 7500,
                                              "end": 7514,
                                              "loc": {
                                                "start": {
                                                  "line": 202,
                                                  "column": 35
                                                },
                                                "end": {
                                                  "line": 202,
                                                  "column": 49
                                                }
                                              },
                                              "name": "updateGeometry"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 7515,
                                            "end": 7519,
                                            "loc": {
                                              "start": {
                                                "line": 202,
                                                "column": 50
                                              },
                                              "end": {
                                                "line": 202,
                                                "column": 54
                                              }
                                            },
                                            "name": "bind"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "ThisExpression",
                                            "start": 7520,
                                            "end": 7524,
                                            "loc": {
                                              "start": {
                                                "line": 202,
                                                "column": 55
                                              },
                                              "end": {
                                                "line": 202,
                                                "column": 59
                                              }
                                            }
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 7540,
                                  "end": 7585,
                                  "loc": {
                                    "start": {
                                      "line": 203,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 203,
                                      "column": 57
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 7540,
                                    "end": 7584,
                                    "loc": {
                                      "start": {
                                        "line": 203,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 203,
                                        "column": 56
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 7540,
                                      "end": 7548,
                                      "loc": {
                                        "start": {
                                          "line": 203,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 203,
                                          "column": 20
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 7540,
                                        "end": 7545,
                                        "loc": {
                                          "start": {
                                            "line": 203,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 203,
                                            "column": 17
                                          }
                                        },
                                        "name": "point"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 7546,
                                        "end": 7548,
                                        "loc": {
                                          "start": {
                                            "line": 203,
                                            "column": 18
                                          },
                                          "end": {
                                            "line": 203,
                                            "column": 20
                                          }
                                        },
                                        "name": "on"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Literal",
                                        "start": 7549,
                                        "end": 7558,
                                        "loc": {
                                          "start": {
                                            "line": 203,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 203,
                                            "column": 30
                                          }
                                        },
                                        "value": "dragend",
                                        "rawValue": "dragend",
                                        "raw": "'dragend'"
                                      },
                                      {
                                        "type": "CallExpression",
                                        "start": 7560,
                                        "end": 7583,
                                        "loc": {
                                          "start": {
                                            "line": 203,
                                            "column": 32
                                          },
                                          "end": {
                                            "line": 203,
                                            "column": 55
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 7560,
                                          "end": 7577,
                                          "loc": {
                                            "start": {
                                              "line": 203,
                                              "column": 32
                                            },
                                            "end": {
                                              "line": 203,
                                              "column": 49
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 7560,
                                            "end": 7572,
                                            "loc": {
                                              "start": {
                                                "line": 203,
                                                "column": 32
                                              },
                                              "end": {
                                                "line": 203,
                                                "column": 44
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 7560,
                                              "end": 7564,
                                              "loc": {
                                                "start": {
                                                  "line": 203,
                                                  "column": 32
                                                },
                                                "end": {
                                                  "line": 203,
                                                  "column": 36
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 7565,
                                              "end": 7572,
                                              "loc": {
                                                "start": {
                                                  "line": 203,
                                                  "column": 37
                                                },
                                                "end": {
                                                  "line": 203,
                                                  "column": 44
                                                }
                                              },
                                              "name": "endDrag"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 7573,
                                            "end": 7577,
                                            "loc": {
                                              "start": {
                                                "line": 203,
                                                "column": 45
                                              },
                                              "end": {
                                                "line": 203,
                                                "column": 49
                                              }
                                            },
                                            "name": "bind"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "ThisExpression",
                                            "start": 7578,
                                            "end": 7582,
                                            "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": 7349,
                          "end": 7425,
                          "loc": {
                            "start": {
                              "line": 200,
                              "column": 8
                            },
                            "end": {
                              "line": 200,
                              "column": 84
                            }
                          },
                          "range": [
                            7349,
                            7425
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 7606,
                      "end": 7634,
                      "loc": {
                        "start": {
                          "line": 205,
                          "column": 8
                        },
                        "end": {
                          "line": 205,
                          "column": 36
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 7606,
                        "end": 7633,
                        "loc": {
                          "start": {
                            "line": 205,
                            "column": 8
                          },
                          "end": {
                            "line": 205,
                            "column": 35
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 7606,
                          "end": 7616,
                          "loc": {
                            "start": {
                              "line": 205,
                              "column": 8
                            },
                            "end": {
                              "line": 205,
                              "column": 18
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 7606,
                            "end": 7610,
                            "loc": {
                              "start": {
                                "line": 205,
                                "column": 8
                              },
                              "end": {
                                "line": 205,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7611,
                            "end": 7616,
                            "loc": {
                              "start": {
                                "line": 205,
                                "column": 13
                              },
                              "end": {
                                "line": 205,
                                "column": 18
                              }
                            },
                            "name": "width"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 7619,
                          "end": 7633,
                          "loc": {
                            "start": {
                              "line": 205,
                              "column": 21
                            },
                            "end": {
                              "line": 205,
                              "column": 35
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 7619,
                            "end": 7623,
                            "loc": {
                              "start": {
                                "line": 205,
                                "column": 21
                              },
                              "end": {
                                "line": 205,
                                "column": 25
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7624,
                            "end": 7633,
                            "loc": {
                              "start": {
                                "line": 205,
                                "column": 26
                              },
                              "end": {
                                "line": 205,
                                "column": 35
                              }
                            },
                            "name": "thickness"
                          },
                          "computed": false
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 7643,
                      "end": 7722,
                      "loc": {
                        "start": {
                          "line": 206,
                          "column": 8
                        },
                        "end": {
                          "line": 206,
                          "column": 87
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 7643,
                        "end": 7721,
                        "loc": {
                          "start": {
                            "line": 206,
                            "column": 8
                          },
                          "end": {
                            "line": 206,
                            "column": 86
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 7643,
                          "end": 7651,
                          "loc": {
                            "start": {
                              "line": 206,
                              "column": 8
                            },
                            "end": {
                              "line": 206,
                              "column": 16
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 7643,
                            "end": 7647,
                            "loc": {
                              "start": {
                                "line": 206,
                                "column": 8
                              },
                              "end": {
                                "line": 206,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7648,
                            "end": 7651,
                            "loc": {
                              "start": {
                                "line": 206,
                                "column": 13
                              },
                              "end": {
                                "line": 206,
                                "column": 16
                              }
                            },
                            "name": "add"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 7652,
                            "end": 7666,
                            "loc": {
                              "start": {
                                "line": 206,
                                "column": 17
                              },
                              "end": {
                                "line": 206,
                                "column": 31
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 7652,
                              "end": 7663,
                              "loc": {
                                "start": {
                                  "line": 206,
                                  "column": 17
                                },
                                "end": {
                                  "line": 206,
                                  "column": 28
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 7652,
                                "end": 7656,
                                "loc": {
                                  "start": {
                                    "line": 206,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 206,
                                    "column": 21
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 7657,
                                "end": 7663,
                                "loc": {
                                  "start": {
                                    "line": 206,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 206,
                                    "column": 28
                                  }
                                },
                                "name": "points"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Literal",
                              "start": 7664,
                              "end": 7665,
                              "loc": {
                                "start": {
                                  "line": 206,
                                  "column": 29
                                },
                                "end": {
                                  "line": 206,
                                  "column": 30
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            },
                            "computed": true
                          },
                          {
                            "type": "MemberExpression",
                            "start": 7668,
                            "end": 7682,
                            "loc": {
                              "start": {
                                "line": 206,
                                "column": 33
                              },
                              "end": {
                                "line": 206,
                                "column": 47
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 7668,
                              "end": 7679,
                              "loc": {
                                "start": {
                                  "line": 206,
                                  "column": 33
                                },
                                "end": {
                                  "line": 206,
                                  "column": 44
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 7668,
                                "end": 7672,
                                "loc": {
                                  "start": {
                                    "line": 206,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 206,
                                    "column": 37
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 7673,
                                "end": 7679,
                                "loc": {
                                  "start": {
                                    "line": 206,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 206,
                                    "column": 44
                                  }
                                },
                                "name": "points"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Literal",
                              "start": 7680,
                              "end": 7681,
                              "loc": {
                                "start": {
                                  "line": 206,
                                  "column": 45
                                },
                                "end": {
                                  "line": 206,
                                  "column": 46
                                }
                              },
                              "value": 1,
                              "rawValue": 1,
                              "raw": "1"
                            },
                            "computed": true
                          },
                          {
                            "type": "MemberExpression",
                            "start": 7684,
                            "end": 7693,
                            "loc": {
                              "start": {
                                "line": 206,
                                "column": 49
                              },
                              "end": {
                                "line": 206,
                                "column": 58
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 7684,
                              "end": 7688,
                              "loc": {
                                "start": {
                                  "line": 206,
                                  "column": 49
                                },
                                "end": {
                                  "line": 206,
                                  "column": 53
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7689,
                              "end": 7693,
                              "loc": {
                                "start": {
                                  "line": 206,
                                  "column": 54
                                },
                                "end": {
                                  "line": 206,
                                  "column": 58
                                }
                              },
                              "name": "mesh"
                            },
                            "computed": false
                          },
                          {
                            "type": "MemberExpression",
                            "start": 7695,
                            "end": 7720,
                            "loc": {
                              "start": {
                                "line": 206,
                                "column": 60
                              },
                              "end": {
                                "line": 206,
                                "column": 85
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 7695,
                              "end": 7699,
                              "loc": {
                                "start": {
                                  "line": 206,
                                  "column": 60
                                },
                                "end": {
                                  "line": 206,
                                  "column": 64
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7700,
                              "end": 7720,
                              "loc": {
                                "start": {
                                  "line": 206,
                                  "column": 65
                                },
                                "end": {
                                  "line": 206,
                                  "column": 85
                                }
                              },
                              "name": "constraintsSubstrate"
                            },
                            "computed": false
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 7731,
                      "end": 7753,
                      "loc": {
                        "start": {
                          "line": 207,
                          "column": 8
                        },
                        "end": {
                          "line": 207,
                          "column": 30
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 7731,
                        "end": 7752,
                        "loc": {
                          "start": {
                            "line": 207,
                            "column": 8
                          },
                          "end": {
                            "line": 207,
                            "column": 29
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 7731,
                          "end": 7750,
                          "loc": {
                            "start": {
                              "line": 207,
                              "column": 8
                            },
                            "end": {
                              "line": 207,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 7731,
                            "end": 7735,
                            "loc": {
                              "start": {
                                "line": 207,
                                "column": 8
                              },
                              "end": {
                                "line": 207,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7736,
                            "end": 7750,
                            "loc": {
                              "start": {
                                "line": 207,
                                "column": 13
                              },
                              "end": {
                                "line": 207,
                                "column": 27
                              }
                            },
                            "name": "updateGeometry"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 7765,
              "end": 7930,
              "loc": {
                "start": {
                  "line": 210,
                  "column": 4
                },
                "end": {
                  "line": 213,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 7765,
                "end": 7782,
                "loc": {
                  "start": {
                    "line": 210,
                    "column": 4
                  },
                  "end": {
                    "line": 210,
                    "column": 21
                  }
                },
                "name": "getMiddlePosition"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 7782,
                "end": 7930,
                "loc": {
                  "start": {
                    "line": 210,
                    "column": 21
                  },
                  "end": {
                    "line": 213,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 7785,
                  "end": 7930,
                  "loc": {
                    "start": {
                      "line": 210,
                      "column": 24
                    },
                    "end": {
                      "line": 213,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 7836,
                      "end": 7924,
                      "loc": {
                        "start": {
                          "line": 212,
                          "column": 8
                        },
                        "end": {
                          "line": 212,
                          "column": 96
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 7843,
                        "end": 7923,
                        "loc": {
                          "start": {
                            "line": 212,
                            "column": 15
                          },
                          "end": {
                            "line": 212,
                            "column": 95
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 7843,
                          "end": 7918,
                          "loc": {
                            "start": {
                              "line": 212,
                              "column": 15
                            },
                            "end": {
                              "line": 212,
                              "column": 90
                            }
                          },
                          "object": {
                            "type": "CallExpression",
                            "start": 7843,
                            "end": 7903,
                            "loc": {
                              "start": {
                                "line": 212,
                                "column": 15
                              },
                              "end": {
                                "line": 212,
                                "column": 75
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 7843,
                              "end": 7878,
                              "loc": {
                                "start": {
                                  "line": 212,
                                  "column": 15
                                },
                                "end": {
                                  "line": 212,
                                  "column": 50
                                }
                              },
                              "object": {
                                "type": "CallExpression",
                                "start": 7843,
                                "end": 7874,
                                "loc": {
                                  "start": {
                                    "line": 212,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 212,
                                    "column": 46
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 7843,
                                  "end": 7872,
                                  "loc": {
                                    "start": {
                                      "line": 212,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 212,
                                      "column": 44
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 7843,
                                    "end": 7866,
                                    "loc": {
                                      "start": {
                                        "line": 212,
                                        "column": 15
                                      },
                                      "end": {
                                        "line": 212,
                                        "column": 38
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 7843,
                                      "end": 7857,
                                      "loc": {
                                        "start": {
                                          "line": 212,
                                          "column": 15
                                        },
                                        "end": {
                                          "line": 212,
                                          "column": 29
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 7843,
                                        "end": 7854,
                                        "loc": {
                                          "start": {
                                            "line": 212,
                                            "column": 15
                                          },
                                          "end": {
                                            "line": 212,
                                            "column": 26
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 7843,
                                          "end": 7847,
                                          "loc": {
                                            "start": {
                                              "line": 212,
                                              "column": 15
                                            },
                                            "end": {
                                              "line": 212,
                                              "column": 19
                                            }
                                          },
                                          "leadingComments": null
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 7848,
                                          "end": 7854,
                                          "loc": {
                                            "start": {
                                              "line": 212,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 212,
                                              "column": 26
                                            }
                                          },
                                          "name": "points"
                                        },
                                        "computed": false,
                                        "leadingComments": null
                                      },
                                      "property": {
                                        "type": "Literal",
                                        "start": 7855,
                                        "end": 7856,
                                        "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": 7858,
                                      "end": 7866,
                                      "loc": {
                                        "start": {
                                          "line": 212,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 212,
                                          "column": 38
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false,
                                    "leadingComments": null
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 7867,
                                    "end": 7872,
                                    "loc": {
                                      "start": {
                                        "line": 212,
                                        "column": 39
                                      },
                                      "end": {
                                        "line": 212,
                                        "column": 44
                                      }
                                    },
                                    "name": "clone"
                                  },
                                  "computed": false,
                                  "leadingComments": null
                                },
                                "arguments": [],
                                "leadingComments": null
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 7875,
                                "end": 7878,
                                "loc": {
                                  "start": {
                                    "line": 212,
                                    "column": 47
                                  },
                                  "end": {
                                    "line": 212,
                                    "column": 50
                                  }
                                },
                                "name": "add"
                              },
                              "computed": false,
                              "leadingComments": null
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 7879,
                                "end": 7902,
                                "loc": {
                                  "start": {
                                    "line": 212,
                                    "column": 51
                                  },
                                  "end": {
                                    "line": 212,
                                    "column": 74
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 7879,
                                  "end": 7893,
                                  "loc": {
                                    "start": {
                                      "line": 212,
                                      "column": 51
                                    },
                                    "end": {
                                      "line": 212,
                                      "column": 65
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 7879,
                                    "end": 7890,
                                    "loc": {
                                      "start": {
                                        "line": 212,
                                        "column": 51
                                      },
                                      "end": {
                                        "line": 212,
                                        "column": 62
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 7879,
                                      "end": 7883,
                                      "loc": {
                                        "start": {
                                          "line": 212,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 212,
                                          "column": 55
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 7884,
                                      "end": 7890,
                                      "loc": {
                                        "start": {
                                          "line": 212,
                                          "column": 56
                                        },
                                        "end": {
                                          "line": 212,
                                          "column": 62
                                        }
                                      },
                                      "name": "points"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Literal",
                                    "start": 7891,
                                    "end": 7892,
                                    "loc": {
                                      "start": {
                                        "line": 212,
                                        "column": 63
                                      },
                                      "end": {
                                        "line": 212,
                                        "column": 64
                                      }
                                    },
                                    "value": 1,
                                    "rawValue": 1,
                                    "raw": "1"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 7894,
                                  "end": 7902,
                                  "loc": {
                                    "start": {
                                      "line": 212,
                                      "column": 66
                                    },
                                    "end": {
                                      "line": 212,
                                      "column": 74
                                    }
                                  },
                                  "name": "position"
                                },
                                "computed": false
                              }
                            ],
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7904,
                            "end": 7918,
                            "loc": {
                              "start": {
                                "line": 212,
                                "column": 76
                              },
                              "end": {
                                "line": 212,
                                "column": 90
                              }
                            },
                            "name": "multiplyScalar"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 7919,
                            "end": 7922,
                            "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": 7795,
                          "end": 7827,
                          "loc": {
                            "start": {
                              "line": 211,
                              "column": 8
                            },
                            "end": {
                              "line": 211,
                              "column": 40
                            }
                          },
                          "range": [
                            7795,
                            7827
                          ]
                        }
                      ]
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 7936,
              "end": 8174,
              "loc": {
                "start": {
                  "line": 215,
                  "column": 4
                },
                "end": {
                  "line": 219,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 7936,
                "end": 7946,
                "loc": {
                  "start": {
                    "line": 215,
                    "column": 4
                  },
                  "end": {
                    "line": 215,
                    "column": 14
                  }
                },
                "name": "getTangent"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 7946,
                "end": 8174,
                "loc": {
                  "start": {
                    "line": 215,
                    "column": 14
                  },
                  "end": {
                    "line": 219,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 7947,
                    "end": 7954,
                    "loc": {
                      "start": {
                        "line": 215,
                        "column": 15
                      },
                      "end": {
                        "line": 215,
                        "column": 22
                      }
                    },
                    "name": "atPoint"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 7956,
                  "end": 8174,
                  "loc": {
                    "start": {
                      "line": 215,
                      "column": 24
                    },
                    "end": {
                      "line": 219,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 8012,
                      "end": 8083,
                      "loc": {
                        "start": {
                          "line": 217,
                          "column": 8
                        },
                        "end": {
                          "line": 217,
                          "column": 79
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 8016,
                          "end": 8082,
                          "loc": {
                            "start": {
                              "line": 217,
                              "column": 12
                            },
                            "end": {
                              "line": 217,
                              "column": 78
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 8016,
                            "end": 8019,
                            "loc": {
                              "start": {
                                "line": 217,
                                "column": 12
                              },
                              "end": {
                                "line": 217,
                                "column": 15
                              }
                            },
                            "name": "dir",
                            "leadingComments": null
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 8022,
                            "end": 8082,
                            "loc": {
                              "start": {
                                "line": 217,
                                "column": 18
                              },
                              "end": {
                                "line": 217,
                                "column": 78
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 8022,
                              "end": 8057,
                              "loc": {
                                "start": {
                                  "line": 217,
                                  "column": 18
                                },
                                "end": {
                                  "line": 217,
                                  "column": 53
                                }
                              },
                              "object": {
                                "type": "CallExpression",
                                "start": 8022,
                                "end": 8053,
                                "loc": {
                                  "start": {
                                    "line": 217,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 217,
                                    "column": 49
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 8022,
                                  "end": 8051,
                                  "loc": {
                                    "start": {
                                      "line": 217,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 217,
                                      "column": 47
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 8022,
                                    "end": 8045,
                                    "loc": {
                                      "start": {
                                        "line": 217,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 217,
                                        "column": 41
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 8022,
                                      "end": 8036,
                                      "loc": {
                                        "start": {
                                          "line": 217,
                                          "column": 18
                                        },
                                        "end": {
                                          "line": 217,
                                          "column": 32
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 8022,
                                        "end": 8033,
                                        "loc": {
                                          "start": {
                                            "line": 217,
                                            "column": 18
                                          },
                                          "end": {
                                            "line": 217,
                                            "column": 29
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 8022,
                                          "end": 8026,
                                          "loc": {
                                            "start": {
                                              "line": 217,
                                              "column": 18
                                            },
                                            "end": {
                                              "line": 217,
                                              "column": 22
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 8027,
                                          "end": 8033,
                                          "loc": {
                                            "start": {
                                              "line": 217,
                                              "column": 23
                                            },
                                            "end": {
                                              "line": 217,
                                              "column": 29
                                            }
                                          },
                                          "name": "points"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Literal",
                                        "start": 8034,
                                        "end": 8035,
                                        "loc": {
                                          "start": {
                                            "line": 217,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 217,
                                            "column": 31
                                          }
                                        },
                                        "value": 1,
                                        "rawValue": 1,
                                        "raw": "1"
                                      },
                                      "computed": true
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 8037,
                                      "end": 8045,
                                      "loc": {
                                        "start": {
                                          "line": 217,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 217,
                                          "column": 41
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 8046,
                                    "end": 8051,
                                    "loc": {
                                      "start": {
                                        "line": 217,
                                        "column": 42
                                      },
                                      "end": {
                                        "line": 217,
                                        "column": 47
                                      }
                                    },
                                    "name": "clone"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 8054,
                                "end": 8057,
                                "loc": {
                                  "start": {
                                    "line": 217,
                                    "column": 50
                                  },
                                  "end": {
                                    "line": 217,
                                    "column": 53
                                  }
                                },
                                "name": "sub"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 8058,
                                "end": 8081,
                                "loc": {
                                  "start": {
                                    "line": 217,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 217,
                                    "column": 77
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 8058,
                                  "end": 8072,
                                  "loc": {
                                    "start": {
                                      "line": 217,
                                      "column": 54
                                    },
                                    "end": {
                                      "line": 217,
                                      "column": 68
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 8058,
                                    "end": 8069,
                                    "loc": {
                                      "start": {
                                        "line": 217,
                                        "column": 54
                                      },
                                      "end": {
                                        "line": 217,
                                        "column": 65
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 8058,
                                      "end": 8062,
                                      "loc": {
                                        "start": {
                                          "line": 217,
                                          "column": 54
                                        },
                                        "end": {
                                          "line": 217,
                                          "column": 58
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 8063,
                                      "end": 8069,
                                      "loc": {
                                        "start": {
                                          "line": 217,
                                          "column": 59
                                        },
                                        "end": {
                                          "line": 217,
                                          "column": 65
                                        }
                                      },
                                      "name": "points"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Literal",
                                    "start": 8070,
                                    "end": 8071,
                                    "loc": {
                                      "start": {
                                        "line": 217,
                                        "column": 66
                                      },
                                      "end": {
                                        "line": 217,
                                        "column": 67
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 8073,
                                  "end": 8081,
                                  "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": 7966,
                          "end": 8003,
                          "loc": {
                            "start": {
                              "line": 216,
                              "column": 8
                            },
                            "end": {
                              "line": 216,
                              "column": 45
                            }
                          },
                          "range": [
                            7966,
                            8003
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 8092,
                      "end": 8168,
                      "loc": {
                        "start": {
                          "line": 218,
                          "column": 8
                        },
                        "end": {
                          "line": 218,
                          "column": 84
                        }
                      },
                      "argument": {
                        "type": "ConditionalExpression",
                        "start": 8100,
                        "end": 8166,
                        "loc": {
                          "start": {
                            "line": 218,
                            "column": 16
                          },
                          "end": {
                            "line": 218,
                            "column": 82
                          }
                        },
                        "test": {
                          "type": "BinaryExpression",
                          "start": 8100,
                          "end": 8119,
                          "loc": {
                            "start": {
                              "line": 218,
                              "column": 16
                            },
                            "end": {
                              "line": 218,
                              "column": 35
                            }
                          },
                          "left": {
                            "type": "CallExpression",
                            "start": 8100,
                            "end": 8112,
                            "loc": {
                              "start": {
                                "line": 218,
                                "column": 16
                              },
                              "end": {
                                "line": 218,
                                "column": 28
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 8100,
                              "end": 8110,
                              "loc": {
                                "start": {
                                  "line": 218,
                                  "column": 16
                                },
                                "end": {
                                  "line": 218,
                                  "column": 26
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 8100,
                                "end": 8103,
                                "loc": {
                                  "start": {
                                    "line": 218,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 218,
                                    "column": 19
                                  }
                                },
                                "name": "dir"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 8104,
                                "end": 8110,
                                "loc": {
                                  "start": {
                                    "line": 218,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 218,
                                    "column": 26
                                  }
                                },
                                "name": "length"
                              },
                              "computed": false
                            },
                            "arguments": []
                          },
                          "operator": ">",
                          "right": {
                            "type": "Literal",
                            "start": 8115,
                            "end": 8119,
                            "loc": {
                              "start": {
                                "line": 218,
                                "column": 31
                              },
                              "end": {
                                "line": 218,
                                "column": 35
                              }
                            },
                            "value": 1e-9,
                            "rawValue": 1e-9,
                            "raw": "1e-9"
                          }
                        },
                        "consequent": {
                          "type": "CallExpression",
                          "start": 8122,
                          "end": 8137,
                          "loc": {
                            "start": {
                              "line": 218,
                              "column": 38
                            },
                            "end": {
                              "line": 218,
                              "column": 53
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 8122,
                            "end": 8135,
                            "loc": {
                              "start": {
                                "line": 218,
                                "column": 38
                              },
                              "end": {
                                "line": 218,
                                "column": 51
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 8122,
                              "end": 8125,
                              "loc": {
                                "start": {
                                  "line": 218,
                                  "column": 38
                                },
                                "end": {
                                  "line": 218,
                                  "column": 41
                                }
                              },
                              "name": "dir"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 8126,
                              "end": 8135,
                              "loc": {
                                "start": {
                                  "line": 218,
                                  "column": 42
                                },
                                "end": {
                                  "line": 218,
                                  "column": 51
                                }
                              },
                              "name": "normalize"
                            },
                            "computed": false
                          },
                          "arguments": []
                        },
                        "alternate": {
                          "type": "NewExpression",
                          "start": 8140,
                          "end": 8166,
                          "loc": {
                            "start": {
                              "line": 218,
                              "column": 56
                            },
                            "end": {
                              "line": 218,
                              "column": 82
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 8144,
                            "end": 8157,
                            "loc": {
                              "start": {
                                "line": 218,
                                "column": 60
                              },
                              "end": {
                                "line": 218,
                                "column": 73
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 8144,
                              "end": 8149,
                              "loc": {
                                "start": {
                                  "line": 218,
                                  "column": 60
                                },
                                "end": {
                                  "line": 218,
                                  "column": 65
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 8150,
                              "end": 8157,
                              "loc": {
                                "start": {
                                  "line": 218,
                                  "column": 66
                                },
                                "end": {
                                  "line": 218,
                                  "column": 73
                                }
                              },
                              "name": "Vector3"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Literal",
                              "start": 8158,
                              "end": 8159,
                              "loc": {
                                "start": {
                                  "line": 218,
                                  "column": 74
                                },
                                "end": {
                                  "line": 218,
                                  "column": 75
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            },
                            {
                              "type": "Literal",
                              "start": 8161,
                              "end": 8162,
                              "loc": {
                                "start": {
                                  "line": 218,
                                  "column": 77
                                },
                                "end": {
                                  "line": 218,
                                  "column": 78
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            },
                            {
                              "type": "Literal",
                              "start": 8164,
                              "end": 8165,
                              "loc": {
                                "start": {
                                  "line": 218,
                                  "column": 80
                                },
                                "end": {
                                  "line": 218,
                                  "column": 81
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            }
                          ]
                        },
                        "parenthesizedExpression": true
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 8180,
              "end": 8275,
              "loc": {
                "start": {
                  "line": 221,
                  "column": 4
                },
                "end": {
                  "line": 223,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 8180,
                "end": 8189,
                "loc": {
                  "start": {
                    "line": 221,
                    "column": 4
                  },
                  "end": {
                    "line": 221,
                    "column": 13
                  }
                },
                "name": "getLength"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 8189,
                "end": 8275,
                "loc": {
                  "start": {
                    "line": 221,
                    "column": 13
                  },
                  "end": {
                    "line": 223,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 8192,
                  "end": 8275,
                  "loc": {
                    "start": {
                      "line": 221,
                      "column": 16
                    },
                    "end": {
                      "line": 223,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 8202,
                      "end": 8269,
                      "loc": {
                        "start": {
                          "line": 222,
                          "column": 8
                        },
                        "end": {
                          "line": 222,
                          "column": 75
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 8209,
                        "end": 8268,
                        "loc": {
                          "start": {
                            "line": 222,
                            "column": 15
                          },
                          "end": {
                            "line": 222,
                            "column": 74
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 8209,
                          "end": 8243,
                          "loc": {
                            "start": {
                              "line": 222,
                              "column": 15
                            },
                            "end": {
                              "line": 222,
                              "column": 49
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 8209,
                            "end": 8232,
                            "loc": {
                              "start": {
                                "line": 222,
                                "column": 15
                              },
                              "end": {
                                "line": 222,
                                "column": 38
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 8209,
                              "end": 8223,
                              "loc": {
                                "start": {
                                  "line": 222,
                                  "column": 15
                                },
                                "end": {
                                  "line": 222,
                                  "column": 29
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 8209,
                                "end": 8220,
                                "loc": {
                                  "start": {
                                    "line": 222,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 222,
                                    "column": 26
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 8209,
                                  "end": 8213,
                                  "loc": {
                                    "start": {
                                      "line": 222,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 222,
                                      "column": 19
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 8214,
                                  "end": 8220,
                                  "loc": {
                                    "start": {
                                      "line": 222,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 222,
                                      "column": 26
                                    }
                                  },
                                  "name": "points"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Literal",
                                "start": 8221,
                                "end": 8222,
                                "loc": {
                                  "start": {
                                    "line": 222,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 222,
                                    "column": 28
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0"
                              },
                              "computed": true
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 8224,
                              "end": 8232,
                              "loc": {
                                "start": {
                                  "line": 222,
                                  "column": 30
                                },
                                "end": {
                                  "line": 222,
                                  "column": 38
                                }
                              },
                              "name": "position"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 8233,
                            "end": 8243,
                            "loc": {
                              "start": {
                                "line": 222,
                                "column": 39
                              },
                              "end": {
                                "line": 222,
                                "column": 49
                              }
                            },
                            "name": "distanceTo"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 8244,
                            "end": 8267,
                            "loc": {
                              "start": {
                                "line": 222,
                                "column": 50
                              },
                              "end": {
                                "line": 222,
                                "column": 73
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 8244,
                              "end": 8258,
                              "loc": {
                                "start": {
                                  "line": 222,
                                  "column": 50
                                },
                                "end": {
                                  "line": 222,
                                  "column": 64
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 8244,
                                "end": 8255,
                                "loc": {
                                  "start": {
                                    "line": 222,
                                    "column": 50
                                  },
                                  "end": {
                                    "line": 222,
                                    "column": 61
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 8244,
                                  "end": 8248,
                                  "loc": {
                                    "start": {
                                      "line": 222,
                                      "column": 50
                                    },
                                    "end": {
                                      "line": 222,
                                      "column": 54
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 8249,
                                  "end": 8255,
                                  "loc": {
                                    "start": {
                                      "line": 222,
                                      "column": 55
                                    },
                                    "end": {
                                      "line": 222,
                                      "column": 61
                                    }
                                  },
                                  "name": "points"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Literal",
                                "start": 8256,
                                "end": 8257,
                                "loc": {
                                  "start": {
                                    "line": 222,
                                    "column": 62
                                  },
                                  "end": {
                                    "line": 222,
                                    "column": 63
                                  }
                                },
                                "value": 1,
                                "rawValue": 1,
                                "raw": "1"
                              },
                              "computed": true
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 8259,
                              "end": 8267,
                              "loc": {
                                "start": {
                                  "line": 222,
                                  "column": 65
                                },
                                "end": {
                                  "line": 222,
                                  "column": 73
                                }
                              },
                              "name": "position"
                            },
                            "computed": false
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 8281,
              "end": 8784,
              "loc": {
                "start": {
                  "line": 225,
                  "column": 4
                },
                "end": {
                  "line": 236,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 8287,
                "end": 8299,
                "loc": {
                  "start": {
                    "line": 225,
                    "column": 10
                  },
                  "end": {
                    "line": 225,
                    "column": 22
                  }
                },
                "name": "moveRelative"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 8299,
                "end": 8784,
                "loc": {
                  "start": {
                    "line": 225,
                    "column": 22
                  },
                  "end": {
                    "line": 236,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 8300,
                    "end": 8309,
                    "loc": {
                      "start": {
                        "line": 225,
                        "column": 23
                      },
                      "end": {
                        "line": 225,
                        "column": 32
                      }
                    },
                    "name": "direction"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 8311,
                  "end": 8784,
                  "loc": {
                    "start": {
                      "line": 225,
                      "column": 34
                    },
                    "end": {
                      "line": 236,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 8321,
                      "end": 8343,
                      "loc": {
                        "start": {
                          "line": 226,
                          "column": 8
                        },
                        "end": {
                          "line": 226,
                          "column": 30
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 8325,
                          "end": 8342,
                          "loc": {
                            "start": {
                              "line": 226,
                              "column": 12
                            },
                            "end": {
                              "line": 226,
                              "column": 29
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 8325,
                            "end": 8328,
                            "loc": {
                              "start": {
                                "line": 226,
                                "column": 12
                              },
                              "end": {
                                "line": 226,
                                "column": 15
                              }
                            },
                            "name": "pts"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 8331,
                            "end": 8342,
                            "loc": {
                              "start": {
                                "line": 226,
                                "column": 18
                              },
                              "end": {
                                "line": 226,
                                "column": 29
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 8331,
                              "end": 8335,
                              "loc": {
                                "start": {
                                  "line": 226,
                                  "column": 18
                                },
                                "end": {
                                  "line": 226,
                                  "column": 22
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 8336,
                              "end": 8342,
                              "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": 8352,
                          "end": 8377,
                          "loc": {
                            "start": {
                              "line": 227,
                              "column": 8
                            },
                            "end": {
                              "line": 227,
                              "column": 33
                            }
                          },
                          "range": [
                            8352,
                            8377
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 8386,
                      "end": 8430,
                      "loc": {
                        "start": {
                          "line": 228,
                          "column": 8
                        },
                        "end": {
                          "line": 228,
                          "column": 52
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 8386,
                        "end": 8429,
                        "loc": {
                          "start": {
                            "line": 228,
                            "column": 8
                          },
                          "end": {
                            "line": 228,
                            "column": 51
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 8386,
                          "end": 8397,
                          "loc": {
                            "start": {
                              "line": 228,
                              "column": 8
                            },
                            "end": {
                              "line": 228,
                              "column": 19
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 8386,
                            "end": 8389,
                            "loc": {
                              "start": {
                                "line": 228,
                                "column": 8
                              },
                              "end": {
                                "line": 228,
                                "column": 11
                              }
                            },
                            "name": "pts",
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 8390,
                            "end": 8397,
                            "loc": {
                              "start": {
                                "line": 228,
                                "column": 12
                              },
                              "end": {
                                "line": 228,
                                "column": 19
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 8398,
                            "end": 8428,
                            "loc": {
                              "start": {
                                "line": 228,
                                "column": 20
                              },
                              "end": {
                                "line": 228,
                                "column": 50
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": true,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 8398,
                                "end": 8399,
                                "loc": {
                                  "start": {
                                    "line": 228,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 228,
                                    "column": 21
                                  }
                                },
                                "name": "p"
                              }
                            ],
                            "body": {
                              "type": "CallExpression",
                              "start": 8403,
                              "end": 8428,
                              "loc": {
                                "start": {
                                  "line": 228,
                                  "column": 25
                                },
                                "end": {
                                  "line": 228,
                                  "column": 50
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 8403,
                                "end": 8417,
                                "loc": {
                                  "start": {
                                    "line": 228,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 228,
                                    "column": 39
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 8403,
                                  "end": 8413,
                                  "loc": {
                                    "start": {
                                      "line": 228,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 228,
                                      "column": 35
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 8403,
                                    "end": 8404,
                                    "loc": {
                                      "start": {
                                        "line": 228,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 228,
                                        "column": 26
                                      }
                                    },
                                    "name": "p"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 8405,
                                    "end": 8413,
                                    "loc": {
                                      "start": {
                                        "line": 228,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 228,
                                        "column": 35
                                      }
                                    },
                                    "name": "position"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 8414,
                                  "end": 8417,
                                  "loc": {
                                    "start": {
                                      "line": 228,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 228,
                                      "column": 39
                                    }
                                  },
                                  "name": "add"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 8418,
                                  "end": 8427,
                                  "loc": {
                                    "start": {
                                      "line": 228,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 228,
                                      "column": 49
                                    }
                                  },
                                  "name": "direction"
                                }
                              ]
                            }
                          }
                        ],
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " set positions directly",
                          "start": 8352,
                          "end": 8377,
                          "loc": {
                            "start": {
                              "line": 227,
                              "column": 8
                            },
                            "end": {
                              "line": 227,
                              "column": 33
                            }
                          },
                          "range": [
                            8352,
                            8377
                          ]
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " update geometry after all points are moved",
                          "start": 8439,
                          "end": 8484,
                          "loc": {
                            "start": {
                              "line": 229,
                              "column": 8
                            },
                            "end": {
                              "line": 229,
                              "column": 53
                            }
                          },
                          "range": [
                            8439,
                            8484
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 8493,
                      "end": 8515,
                      "loc": {
                        "start": {
                          "line": 230,
                          "column": 8
                        },
                        "end": {
                          "line": 230,
                          "column": 30
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 8493,
                        "end": 8514,
                        "loc": {
                          "start": {
                            "line": 230,
                            "column": 8
                          },
                          "end": {
                            "line": 230,
                            "column": 29
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 8493,
                          "end": 8512,
                          "loc": {
                            "start": {
                              "line": 230,
                              "column": 8
                            },
                            "end": {
                              "line": 230,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 8493,
                            "end": 8497,
                            "loc": {
                              "start": {
                                "line": 230,
                                "column": 8
                              },
                              "end": {
                                "line": 230,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 8498,
                            "end": 8512,
                            "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": 8439,
                          "end": 8484,
                          "loc": {
                            "start": {
                              "line": 229,
                              "column": 8
                            },
                            "end": {
                              "line": 229,
                              "column": 53
                            }
                          },
                          "range": [
                            8439,
                            8484
                          ]
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "this.updateVisualization(); //TODO: why are endpoints not in sync otherwise?",
                          "start": 8524,
                          "end": 8602,
                          "loc": {
                            "start": {
                              "line": 231,
                              "column": 8
                            },
                            "end": {
                              "line": 231,
                              "column": 86
                            }
                          },
                          "range": [
                            8524,
                            8602
                          ]
                        },
                        {
                          "type": "CommentLine",
                          "value": " notify that all the points and the object were moved really",
                          "start": 8611,
                          "end": 8673,
                          "loc": {
                            "start": {
                              "line": 232,
                              "column": 8
                            },
                            "end": {
                              "line": 232,
                              "column": 70
                            }
                          },
                          "range": [
                            8611,
                            8673
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ForOfStatement",
                      "start": 8682,
                      "end": 8738,
                      "loc": {
                        "start": {
                          "line": 233,
                          "column": 8
                        },
                        "end": {
                          "line": 234,
                          "column": 37
                        }
                      },
                      "left": {
                        "type": "VariableDeclaration",
                        "start": 8687,
                        "end": 8692,
                        "loc": {
                          "start": {
                            "line": 233,
                            "column": 13
                          },
                          "end": {
                            "line": 233,
                            "column": 18
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 8691,
                            "end": 8692,
                            "loc": {
                              "start": {
                                "line": 233,
                                "column": 17
                              },
                              "end": {
                                "line": 233,
                                "column": 18
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 8691,
                              "end": 8692,
                              "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": 8696,
                        "end": 8699,
                        "loc": {
                          "start": {
                            "line": 233,
                            "column": 22
                          },
                          "end": {
                            "line": 233,
                            "column": 25
                          }
                        },
                        "name": "pts"
                      },
                      "body": {
                        "type": "ExpressionStatement",
                        "start": 8713,
                        "end": 8738,
                        "loc": {
                          "start": {
                            "line": 234,
                            "column": 12
                          },
                          "end": {
                            "line": 234,
                            "column": 37
                          }
                        },
                        "expression": {
                          "type": "AwaitExpression",
                          "start": 8713,
                          "end": 8737,
                          "loc": {
                            "start": {
                              "line": 234,
                              "column": 12
                            },
                            "end": {
                              "line": 234,
                              "column": 36
                            }
                          },
                          "all": false,
                          "argument": {
                            "type": "CallExpression",
                            "start": 8719,
                            "end": 8737,
                            "loc": {
                              "start": {
                                "line": 234,
                                "column": 18
                              },
                              "end": {
                                "line": 234,
                                "column": 36
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 8719,
                              "end": 8725,
                              "loc": {
                                "start": {
                                  "line": 234,
                                  "column": 18
                                },
                                "end": {
                                  "line": 234,
                                  "column": 24
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 8719,
                                "end": 8720,
                                "loc": {
                                  "start": {
                                    "line": 234,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 234,
                                    "column": 19
                                  }
                                },
                                "name": "p"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 8721,
                                "end": 8725,
                                "loc": {
                                  "start": {
                                    "line": 234,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 234,
                                    "column": 24
                                  }
                                },
                                "name": "emit"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Literal",
                                "start": 8726,
                                "end": 8733,
                                "loc": {
                                  "start": {
                                    "line": 234,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 234,
                                    "column": 32
                                  }
                                },
                                "value": "moved",
                                "rawValue": "moved",
                                "raw": "'moved'"
                              },
                              {
                                "type": "Identifier",
                                "start": 8735,
                                "end": 8736,
                                "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": 8524,
                          "end": 8602,
                          "loc": {
                            "start": {
                              "line": 231,
                              "column": 8
                            },
                            "end": {
                              "line": 231,
                              "column": 86
                            }
                          },
                          "range": [
                            8524,
                            8602
                          ]
                        },
                        {
                          "type": "CommentLine",
                          "value": " notify that all the points and the object were moved really",
                          "start": 8611,
                          "end": 8673,
                          "loc": {
                            "start": {
                              "line": 232,
                              "column": 8
                            },
                            "end": {
                              "line": 232,
                              "column": 70
                            }
                          },
                          "range": [
                            8611,
                            8673
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 8747,
                      "end": 8778,
                      "loc": {
                        "start": {
                          "line": 235,
                          "column": 8
                        },
                        "end": {
                          "line": 235,
                          "column": 39
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 8747,
                        "end": 8777,
                        "loc": {
                          "start": {
                            "line": 235,
                            "column": 8
                          },
                          "end": {
                            "line": 235,
                            "column": 38
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 8753,
                          "end": 8777,
                          "loc": {
                            "start": {
                              "line": 235,
                              "column": 14
                            },
                            "end": {
                              "line": 235,
                              "column": 38
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 8753,
                            "end": 8762,
                            "loc": {
                              "start": {
                                "line": 235,
                                "column": 14
                              },
                              "end": {
                                "line": 235,
                                "column": 23
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 8753,
                              "end": 8757,
                              "loc": {
                                "start": {
                                  "line": 235,
                                  "column": 14
                                },
                                "end": {
                                  "line": 235,
                                  "column": 18
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 8758,
                              "end": 8762,
                              "loc": {
                                "start": {
                                  "line": 235,
                                  "column": 19
                                },
                                "end": {
                                  "line": 235,
                                  "column": 23
                                }
                              },
                              "name": "emit"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Literal",
                              "start": 8763,
                              "end": 8770,
                              "loc": {
                                "start": {
                                  "line": 235,
                                  "column": 24
                                },
                                "end": {
                                  "line": 235,
                                  "column": 31
                                }
                              },
                              "value": "moved",
                              "rawValue": "moved",
                              "raw": "'moved'"
                            },
                            {
                              "type": "ThisExpression",
                              "start": 8772,
                              "end": 8776,
                              "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": 8790,
                  "end": 8877,
                  "loc": {
                    "start": {
                      "line": 238,
                      "column": 4
                    },
                    "end": {
                      "line": 238,
                      "column": 91
                    }
                  },
                  "range": [
                    8790,
                    8877
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": "one or more parameters can be undefined/null (meaning: do not change)",
                  "start": 8882,
                  "end": 8953,
                  "loc": {
                    "start": {
                      "line": 239,
                      "column": 4
                    },
                    "end": {
                      "line": 239,
                      "column": 75
                    }
                  },
                  "range": [
                    8882,
                    8953
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 8958,
              "end": 9147,
              "loc": {
                "start": {
                  "line": 240,
                  "column": 4
                },
                "end": {
                  "line": 246,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 8958,
                "end": 8964,
                "loc": {
                  "start": {
                    "line": 240,
                    "column": 4
                  },
                  "end": {
                    "line": 240,
                    "column": 10
                  }
                },
                "name": "modify",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 8964,
                "end": 9147,
                "loc": {
                  "start": {
                    "line": 240,
                    "column": 10
                  },
                  "end": {
                    "line": 246,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 8965,
                    "end": 8970,
                    "loc": {
                      "start": {
                        "line": 240,
                        "column": 11
                      },
                      "end": {
                        "line": 240,
                        "column": 16
                      }
                    },
                    "name": "start"
                  },
                  {
                    "type": "Identifier",
                    "start": 8972,
                    "end": 8975,
                    "loc": {
                      "start": {
                        "line": 240,
                        "column": 18
                      },
                      "end": {
                        "line": 240,
                        "column": 21
                      }
                    },
                    "name": "end"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 8977,
                  "end": 9147,
                  "loc": {
                    "start": {
                      "line": 240,
                      "column": 23
                    },
                    "end": {
                      "line": 246,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 8987,
                      "end": 9046,
                      "loc": {
                        "start": {
                          "line": 241,
                          "column": 8
                        },
                        "end": {
                          "line": 242,
                          "column": 48
                        }
                      },
                      "test": {
                        "type": "Identifier",
                        "start": 8991,
                        "end": 8996,
                        "loc": {
                          "start": {
                            "line": 241,
                            "column": 12
                          },
                          "end": {
                            "line": 241,
                            "column": 17
                          }
                        },
                        "name": "start"
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 9010,
                        "end": 9046,
                        "loc": {
                          "start": {
                            "line": 242,
                            "column": 12
                          },
                          "end": {
                            "line": 242,
                            "column": 48
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 9010,
                          "end": 9045,
                          "loc": {
                            "start": {
                              "line": 242,
                              "column": 12
                            },
                            "end": {
                              "line": 242,
                              "column": 47
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 9010,
                            "end": 9038,
                            "loc": {
                              "start": {
                                "line": 242,
                                "column": 12
                              },
                              "end": {
                                "line": 242,
                                "column": 40
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 9010,
                              "end": 9033,
                              "loc": {
                                "start": {
                                  "line": 242,
                                  "column": 12
                                },
                                "end": {
                                  "line": 242,
                                  "column": 35
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 9010,
                                "end": 9024,
                                "loc": {
                                  "start": {
                                    "line": 242,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 242,
                                    "column": 26
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 9010,
                                  "end": 9021,
                                  "loc": {
                                    "start": {
                                      "line": 242,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 242,
                                      "column": 23
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 9010,
                                    "end": 9014,
                                    "loc": {
                                      "start": {
                                        "line": 242,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 242,
                                        "column": 16
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 9015,
                                    "end": 9021,
                                    "loc": {
                                      "start": {
                                        "line": 242,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 242,
                                        "column": 23
                                      }
                                    },
                                    "name": "points"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Literal",
                                  "start": 9022,
                                  "end": 9023,
                                  "loc": {
                                    "start": {
                                      "line": 242,
                                      "column": 24
                                    },
                                    "end": {
                                      "line": 242,
                                      "column": 25
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                "computed": true
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 9025,
                                "end": 9033,
                                "loc": {
                                  "start": {
                                    "line": 242,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 242,
                                    "column": 35
                                  }
                                },
                                "name": "position"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9034,
                              "end": 9038,
                              "loc": {
                                "start": {
                                  "line": 242,
                                  "column": 36
                                },
                                "end": {
                                  "line": 242,
                                  "column": 40
                                }
                              },
                              "name": "copy"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 9039,
                              "end": 9044,
                              "loc": {
                                "start": {
                                  "line": 242,
                                  "column": 41
                                },
                                "end": {
                                  "line": 242,
                                  "column": 46
                                }
                              },
                              "name": "start"
                            }
                          ]
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 9055,
                      "end": 9110,
                      "loc": {
                        "start": {
                          "line": 243,
                          "column": 8
                        },
                        "end": {
                          "line": 244,
                          "column": 46
                        }
                      },
                      "test": {
                        "type": "Identifier",
                        "start": 9059,
                        "end": 9062,
                        "loc": {
                          "start": {
                            "line": 243,
                            "column": 12
                          },
                          "end": {
                            "line": 243,
                            "column": 15
                          }
                        },
                        "name": "end"
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 9076,
                        "end": 9110,
                        "loc": {
                          "start": {
                            "line": 244,
                            "column": 12
                          },
                          "end": {
                            "line": 244,
                            "column": 46
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 9076,
                          "end": 9109,
                          "loc": {
                            "start": {
                              "line": 244,
                              "column": 12
                            },
                            "end": {
                              "line": 244,
                              "column": 45
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 9076,
                            "end": 9104,
                            "loc": {
                              "start": {
                                "line": 244,
                                "column": 12
                              },
                              "end": {
                                "line": 244,
                                "column": 40
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 9076,
                              "end": 9099,
                              "loc": {
                                "start": {
                                  "line": 244,
                                  "column": 12
                                },
                                "end": {
                                  "line": 244,
                                  "column": 35
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 9076,
                                "end": 9090,
                                "loc": {
                                  "start": {
                                    "line": 244,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 244,
                                    "column": 26
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 9076,
                                  "end": 9087,
                                  "loc": {
                                    "start": {
                                      "line": 244,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 244,
                                      "column": 23
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 9076,
                                    "end": 9080,
                                    "loc": {
                                      "start": {
                                        "line": 244,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 244,
                                        "column": 16
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 9081,
                                    "end": 9087,
                                    "loc": {
                                      "start": {
                                        "line": 244,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 244,
                                        "column": 23
                                      }
                                    },
                                    "name": "points"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Literal",
                                  "start": 9088,
                                  "end": 9089,
                                  "loc": {
                                    "start": {
                                      "line": 244,
                                      "column": 24
                                    },
                                    "end": {
                                      "line": 244,
                                      "column": 25
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                },
                                "computed": true
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 9091,
                                "end": 9099,
                                "loc": {
                                  "start": {
                                    "line": 244,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 244,
                                    "column": 35
                                  }
                                },
                                "name": "position"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9100,
                              "end": 9104,
                              "loc": {
                                "start": {
                                  "line": 244,
                                  "column": 36
                                },
                                "end": {
                                  "line": 244,
                                  "column": 40
                                }
                              },
                              "name": "copy"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 9105,
                              "end": 9108,
                              "loc": {
                                "start": {
                                  "line": 244,
                                  "column": 41
                                },
                                "end": {
                                  "line": 244,
                                  "column": 44
                                }
                              },
                              "name": "end"
                            }
                          ]
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 9119,
                      "end": 9141,
                      "loc": {
                        "start": {
                          "line": 245,
                          "column": 8
                        },
                        "end": {
                          "line": 245,
                          "column": 30
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 9119,
                        "end": 9140,
                        "loc": {
                          "start": {
                            "line": 245,
                            "column": 8
                          },
                          "end": {
                            "line": 245,
                            "column": 29
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 9119,
                          "end": 9138,
                          "loc": {
                            "start": {
                              "line": 245,
                              "column": 8
                            },
                            "end": {
                              "line": 245,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 9119,
                            "end": 9123,
                            "loc": {
                              "start": {
                                "line": 245,
                                "column": 8
                              },
                              "end": {
                                "line": 245,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 9124,
                            "end": 9138,
                            "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": 8790,
                  "end": 8877,
                  "loc": {
                    "start": {
                      "line": 238,
                      "column": 4
                    },
                    "end": {
                      "line": 238,
                      "column": 91
                    }
                  },
                  "range": [
                    8790,
                    8877
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": "one or more parameters can be undefined/null (meaning: do not change)",
                  "start": 8882,
                  "end": 8953,
                  "loc": {
                    "start": {
                      "line": 239,
                      "column": 4
                    },
                    "end": {
                      "line": 239,
                      "column": 75
                    }
                  },
                  "range": [
                    8882,
                    8953
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 9153,
              "end": 9392,
              "loc": {
                "start": {
                  "line": 248,
                  "column": 4
                },
                "end": {
                  "line": 253,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 9159,
                "end": 9166,
                "loc": {
                  "start": {
                    "line": 248,
                    "column": 10
                  },
                  "end": {
                    "line": 248,
                    "column": 17
                  }
                },
                "name": "endDrag"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 9166,
                "end": 9392,
                "loc": {
                  "start": {
                    "line": 248,
                    "column": 17
                  },
                  "end": {
                    "line": 253,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 9167,
                    "end": 9173,
                    "loc": {
                      "start": {
                        "line": 248,
                        "column": 18
                      },
                      "end": {
                        "line": 248,
                        "column": 24
                      }
                    },
                    "name": "sketch"
                  },
                  {
                    "type": "Identifier",
                    "start": 9175,
                    "end": 9181,
                    "loc": {
                      "start": {
                        "line": 248,
                        "column": 26
                      },
                      "end": {
                        "line": 248,
                        "column": 32
                      }
                    },
                    "name": "socket"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 9183,
                  "end": 9392,
                  "loc": {
                    "start": {
                      "line": 248,
                      "column": 34
                    },
                    "end": {
                      "line": 253,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 9193,
                      "end": 9334,
                      "loc": {
                        "start": {
                          "line": 249,
                          "column": 8
                        },
                        "end": {
                          "line": 251,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "CallExpression",
                        "start": 9197,
                        "end": 9220,
                        "loc": {
                          "start": {
                            "line": 249,
                            "column": 12
                          },
                          "end": {
                            "line": 249,
                            "column": 35
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 9197,
                          "end": 9214,
                          "loc": {
                            "start": {
                              "line": 249,
                              "column": 12
                            },
                            "end": {
                              "line": 249,
                              "column": 29
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 9197,
                            "end": 9203,
                            "loc": {
                              "start": {
                                "line": 249,
                                "column": 12
                              },
                              "end": {
                                "line": 249,
                                "column": 18
                              }
                            },
                            "name": "sketch"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 9204,
                            "end": 9214,
                            "loc": {
                              "start": {
                                "line": 249,
                                "column": 19
                              },
                              "end": {
                                "line": 249,
                                "column": 29
                              }
                            },
                            "name": "isOnSketch"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ThisExpression",
                            "start": 9215,
                            "end": 9219,
                            "loc": {
                              "start": {
                                "line": 249,
                                "column": 30
                              },
                              "end": {
                                "line": 249,
                                "column": 34
                              }
                            }
                          }
                        ]
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 9222,
                        "end": 9334,
                        "loc": {
                          "start": {
                            "line": 249,
                            "column": 37
                          },
                          "end": {
                            "line": 251,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 9236,
                            "end": 9324,
                            "loc": {
                              "start": {
                                "line": 250,
                                "column": 12
                              },
                              "end": {
                                "line": 250,
                                "column": 100
                              }
                            },
                            "expression": {
                              "type": "AwaitExpression",
                              "start": 9236,
                              "end": 9323,
                              "loc": {
                                "start": {
                                  "line": 250,
                                  "column": 12
                                },
                                "end": {
                                  "line": 250,
                                  "column": 99
                                }
                              },
                              "all": false,
                              "argument": {
                                "type": "CallExpression",
                                "start": 9242,
                                "end": 9323,
                                "loc": {
                                  "start": {
                                    "line": 250,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 250,
                                    "column": 99
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 9242,
                                  "end": 9315,
                                  "loc": {
                                    "start": {
                                      "line": 250,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 250,
                                      "column": 91
                                    }
                                  },
                                  "object": {
                                    "type": "CallExpression",
                                    "start": 9242,
                                    "end": 9307,
                                    "loc": {
                                      "start": {
                                        "line": 250,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 250,
                                        "column": 83
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 9242,
                                      "end": 9280,
                                      "loc": {
                                        "start": {
                                          "line": 250,
                                          "column": 18
                                        },
                                        "end": {
                                          "line": 250,
                                          "column": 56
                                        }
                                      },
                                      "object": {
                                        "type": "CallExpression",
                                        "start": 9242,
                                        "end": 9276,
                                        "loc": {
                                          "start": {
                                            "line": 250,
                                            "column": 18
                                          },
                                          "end": {
                                            "line": 250,
                                            "column": 52
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 9242,
                                          "end": 9268,
                                          "loc": {
                                            "start": {
                                              "line": 250,
                                              "column": 18
                                            },
                                            "end": {
                                              "line": 250,
                                              "column": 44
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 9242,
                                            "end": 9246,
                                            "loc": {
                                              "start": {
                                                "line": 250,
                                                "column": 18
                                              },
                                              "end": {
                                                "line": 250,
                                                "column": 22
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 9247,
                                            "end": 9268,
                                            "loc": {
                                              "start": {
                                                "line": 250,
                                                "column": 23
                                              },
                                              "end": {
                                                "line": 250,
                                                "column": 44
                                              }
                                            },
                                            "name": "prepareUpdateToServer"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 9269,
                                            "end": 9275,
                                            "loc": {
                                              "start": {
                                                "line": 250,
                                                "column": 45
                                              },
                                              "end": {
                                                "line": 250,
                                                "column": 51
                                              }
                                            },
                                            "name": "sketch"
                                          }
                                        ]
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 9277,
                                        "end": 9280,
                                        "loc": {
                                          "start": {
                                            "line": 250,
                                            "column": 53
                                          },
                                          "end": {
                                            "line": 250,
                                            "column": 56
                                          }
                                        },
                                        "name": "and"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "CallExpression",
                                        "start": 9281,
                                        "end": 9306,
                                        "loc": {
                                          "start": {
                                            "line": 250,
                                            "column": 57
                                          },
                                          "end": {
                                            "line": 250,
                                            "column": 82
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 9281,
                                          "end": 9304,
                                          "loc": {
                                            "start": {
                                              "line": 250,
                                              "column": 57
                                            },
                                            "end": {
                                              "line": 250,
                                              "column": 80
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 9281,
                                            "end": 9287,
                                            "loc": {
                                              "start": {
                                                "line": 250,
                                                "column": 57
                                              },
                                              "end": {
                                                "line": 250,
                                                "column": 63
                                              }
                                            },
                                            "name": "sketch"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 9288,
                                            "end": 9304,
                                            "loc": {
                                              "start": {
                                                "line": 250,
                                                "column": 64
                                              },
                                              "end": {
                                                "line": 250,
                                                "column": 80
                                              }
                                            },
                                            "name": "updateFromServer"
                                          },
                                          "computed": false
                                        },
                                        "arguments": []
                                      }
                                    ]
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 9308,
                                    "end": 9315,
                                    "loc": {
                                      "start": {
                                        "line": 250,
                                        "column": 84
                                      },
                                      "end": {
                                        "line": 250,
                                        "column": 91
                                      }
                                    },
                                    "name": "execute"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 9316,
                                    "end": 9322,
                                    "loc": {
                                      "start": {
                                        "line": 250,
                                        "column": 92
                                      },
                                      "end": {
                                        "line": 250,
                                        "column": 98
                                      }
                                    },
                                    "name": "socket"
                                  }
                                ]
                              }
                            }
                          }
                        ]
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 9343,
                      "end": 9386,
                      "loc": {
                        "start": {
                          "line": 252,
                          "column": 8
                        },
                        "end": {
                          "line": 252,
                          "column": 51
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 9343,
                        "end": 9385,
                        "loc": {
                          "start": {
                            "line": 252,
                            "column": 8
                          },
                          "end": {
                            "line": 252,
                            "column": 50
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 9349,
                          "end": 9385,
                          "loc": {
                            "start": {
                              "line": 252,
                              "column": 14
                            },
                            "end": {
                              "line": 252,
                              "column": 50
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 9349,
                            "end": 9358,
                            "loc": {
                              "start": {
                                "line": 252,
                                "column": 14
                              },
                              "end": {
                                "line": 252,
                                "column": 23
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 9349,
                              "end": 9353,
                              "loc": {
                                "start": {
                                  "line": 252,
                                  "column": 14
                                },
                                "end": {
                                  "line": 252,
                                  "column": 18
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9354,
                              "end": 9358,
                              "loc": {
                                "start": {
                                  "line": 252,
                                  "column": 19
                                },
                                "end": {
                                  "line": 252,
                                  "column": 23
                                }
                              },
                              "name": "emit"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Literal",
                              "start": 9359,
                              "end": 9368,
                              "loc": {
                                "start": {
                                  "line": 252,
                                  "column": 24
                                },
                                "end": {
                                  "line": 252,
                                  "column": 33
                                }
                              },
                              "value": "dragend",
                              "rawValue": "dragend",
                              "raw": "'dragend'"
                            },
                            {
                              "type": "Identifier",
                              "start": 9370,
                              "end": 9376,
                              "loc": {
                                "start": {
                                  "line": 252,
                                  "column": 35
                                },
                                "end": {
                                  "line": 252,
                                  "column": 41
                                }
                              },
                              "name": "sketch"
                            },
                            {
                              "type": "Identifier",
                              "start": 9378,
                              "end": 9384,
                              "loc": {
                                "start": {
                                  "line": 252,
                                  "column": 43
                                },
                                "end": {
                                  "line": 252,
                                  "column": 49
                                }
                              },
                              "name": "socket"
                            }
                          ]
                        }
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 9398,
              "end": 9545,
              "loc": {
                "start": {
                  "line": 255,
                  "column": 4
                },
                "end": {
                  "line": 258,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 9398,
                "end": 9408,
                "loc": {
                  "start": {
                    "line": 255,
                    "column": 4
                  },
                  "end": {
                    "line": 255,
                    "column": 14
                  }
                },
                "name": "setVisible"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 9408,
                "end": 9545,
                "loc": {
                  "start": {
                    "line": 255,
                    "column": 14
                  },
                  "end": {
                    "line": 258,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 9409,
                    "end": 9419,
                    "loc": {
                      "start": {
                        "line": 255,
                        "column": 15
                      },
                      "end": {
                        "line": 255,
                        "column": 25
                      }
                    },
                    "name": "visibility"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 9421,
                  "end": 9545,
                  "loc": {
                    "start": {
                      "line": 255,
                      "column": 27
                    },
                    "end": {
                      "line": 258,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 9431,
                      "end": 9471,
                      "loc": {
                        "start": {
                          "line": 256,
                          "column": 8
                        },
                        "end": {
                          "line": 256,
                          "column": 48
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 9431,
                        "end": 9470,
                        "loc": {
                          "start": {
                            "line": 256,
                            "column": 8
                          },
                          "end": {
                            "line": 256,
                            "column": 47
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 9431,
                          "end": 9457,
                          "loc": {
                            "start": {
                              "line": 256,
                              "column": 8
                            },
                            "end": {
                              "line": 256,
                              "column": 34
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 9431,
                            "end": 9449,
                            "loc": {
                              "start": {
                                "line": 256,
                                "column": 8
                              },
                              "end": {
                                "line": 256,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 9431,
                              "end": 9440,
                              "loc": {
                                "start": {
                                  "line": 256,
                                  "column": 8
                                },
                                "end": {
                                  "line": 256,
                                  "column": 17
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 9431,
                                "end": 9435,
                                "loc": {
                                  "start": {
                                    "line": 256,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 256,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 9436,
                                "end": 9440,
                                "loc": {
                                  "start": {
                                    "line": 256,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 256,
                                    "column": 17
                                  }
                                },
                                "name": "mesh"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9441,
                              "end": 9449,
                              "loc": {
                                "start": {
                                  "line": 256,
                                  "column": 18
                                },
                                "end": {
                                  "line": 256,
                                  "column": 26
                                }
                              },
                              "name": "material"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 9450,
                            "end": 9457,
                            "loc": {
                              "start": {
                                "line": 256,
                                "column": 27
                              },
                              "end": {
                                "line": 256,
                                "column": 34
                              }
                            },
                            "name": "visible"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Identifier",
                          "start": 9460,
                          "end": 9470,
                          "loc": {
                            "start": {
                              "line": 256,
                              "column": 37
                            },
                            "end": {
                              "line": 256,
                              "column": 47
                            }
                          },
                          "name": "visibility"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 9480,
                      "end": 9539,
                      "loc": {
                        "start": {
                          "line": 257,
                          "column": 8
                        },
                        "end": {
                          "line": 257,
                          "column": 67
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 9480,
                        "end": 9538,
                        "loc": {
                          "start": {
                            "line": 257,
                            "column": 8
                          },
                          "end": {
                            "line": 257,
                            "column": 66
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 9480,
                          "end": 9499,
                          "loc": {
                            "start": {
                              "line": 257,
                              "column": 8
                            },
                            "end": {
                              "line": 257,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 9480,
                            "end": 9491,
                            "loc": {
                              "start": {
                                "line": 257,
                                "column": 8
                              },
                              "end": {
                                "line": 257,
                                "column": 19
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 9480,
                              "end": 9484,
                              "loc": {
                                "start": {
                                  "line": 257,
                                  "column": 8
                                },
                                "end": {
                                  "line": 257,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9485,
                              "end": 9491,
                              "loc": {
                                "start": {
                                  "line": 257,
                                  "column": 13
                                },
                                "end": {
                                  "line": 257,
                                  "column": 19
                                }
                              },
                              "name": "points"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 9492,
                            "end": 9499,
                            "loc": {
                              "start": {
                                "line": 257,
                                "column": 20
                              },
                              "end": {
                                "line": 257,
                                "column": 27
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 9500,
                            "end": 9537,
                            "loc": {
                              "start": {
                                "line": 257,
                                "column": 28
                              },
                              "end": {
                                "line": 257,
                                "column": 65
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": true,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 9500,
                                "end": 9505,
                                "loc": {
                                  "start": {
                                    "line": 257,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 257,
                                    "column": 33
                                  }
                                },
                                "name": "point"
                              }
                            ],
                            "body": {
                              "type": "CallExpression",
                              "start": 9509,
                              "end": 9537,
                              "loc": {
                                "start": {
                                  "line": 257,
                                  "column": 37
                                },
                                "end": {
                                  "line": 257,
                                  "column": 65
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 9509,
                                "end": 9525,
                                "loc": {
                                  "start": {
                                    "line": 257,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 257,
                                    "column": 53
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 9509,
                                  "end": 9514,
                                  "loc": {
                                    "start": {
                                      "line": 257,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 257,
                                      "column": 42
                                    }
                                  },
                                  "name": "point"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 9515,
                                  "end": 9525,
                                  "loc": {
                                    "start": {
                                      "line": 257,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 257,
                                      "column": 53
                                    }
                                  },
                                  "name": "setVisible"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 9526,
                                  "end": 9536,
                                  "loc": {
                                    "start": {
                                      "line": 257,
                                      "column": 54
                                    },
                                    "end": {
                                      "line": 257,
                                      "column": 64
                                    }
                                  },
                                  "name": "visibility"
                                }
                              ]
                            }
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 9551,
              "end": 9570,
              "loc": {
                "start": {
                  "line": 260,
                  "column": 4
                },
                "end": {
                  "line": 260,
                  "column": 23
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 9551,
                "end": 9565,
                "loc": {
                  "start": {
                    "line": 260,
                    "column": 4
                  },
                  "end": {
                    "line": 260,
                    "column": 18
                  }
                },
                "name": "updateGeometry"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 9565,
                "end": 9570,
                "loc": {
                  "start": {
                    "line": 260,
                    "column": 18
                  },
                  "end": {
                    "line": 260,
                    "column": 23
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 9568,
                  "end": 9570,
                  "loc": {
                    "start": {
                      "line": 260,
                      "column": 21
                    },
                    "end": {
                      "line": 260,
                      "column": 23
                    }
                  },
                  "body": []
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 9576,
              "end": 10105,
              "loc": {
                "start": {
                  "line": 262,
                  "column": 4
                },
                "end": {
                  "line": 270,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 9576,
                "end": 9596,
                "loc": {
                  "start": {
                    "line": 262,
                    "column": 4
                  },
                  "end": {
                    "line": 262,
                    "column": 24
                  }
                },
                "name": "getAuxiliaryGeometry"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 9596,
                "end": 10105,
                "loc": {
                  "start": {
                    "line": 262,
                    "column": 24
                  },
                  "end": {
                    "line": 270,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 9599,
                  "end": 10105,
                  "loc": {
                    "start": {
                      "line": 262,
                      "column": 27
                    },
                    "end": {
                      "line": 270,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 9609,
                      "end": 9695,
                      "loc": {
                        "start": {
                          "line": 263,
                          "column": 8
                        },
                        "end": {
                          "line": 263,
                          "column": 94
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 9613,
                          "end": 9694,
                          "loc": {
                            "start": {
                              "line": 263,
                              "column": 12
                            },
                            "end": {
                              "line": 263,
                              "column": 93
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 9613,
                            "end": 9619,
                            "loc": {
                              "start": {
                                "line": 263,
                                "column": 12
                              },
                              "end": {
                                "line": 263,
                                "column": 18
                              }
                            },
                            "name": "normal"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 9622,
                            "end": 9694,
                            "loc": {
                              "start": {
                                "line": 263,
                                "column": 21
                              },
                              "end": {
                                "line": 263,
                                "column": 93
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 9622,
                              "end": 9692,
                              "loc": {
                                "start": {
                                  "line": 263,
                                  "column": 21
                                },
                                "end": {
                                  "line": 263,
                                  "column": 91
                                }
                              },
                              "object": {
                                "type": "CallExpression",
                                "start": 9622,
                                "end": 9682,
                                "loc": {
                                  "start": {
                                    "line": 263,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 263,
                                    "column": 81
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 9622,
                                  "end": 9657,
                                  "loc": {
                                    "start": {
                                      "line": 263,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 263,
                                      "column": 56
                                    }
                                  },
                                  "object": {
                                    "type": "CallExpression",
                                    "start": 9622,
                                    "end": 9653,
                                    "loc": {
                                      "start": {
                                        "line": 263,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 263,
                                        "column": 52
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 9622,
                                      "end": 9651,
                                      "loc": {
                                        "start": {
                                          "line": 263,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 263,
                                          "column": 50
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 9622,
                                        "end": 9645,
                                        "loc": {
                                          "start": {
                                            "line": 263,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 263,
                                            "column": 44
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 9622,
                                          "end": 9636,
                                          "loc": {
                                            "start": {
                                              "line": 263,
                                              "column": 21
                                            },
                                            "end": {
                                              "line": 263,
                                              "column": 35
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 9622,
                                            "end": 9633,
                                            "loc": {
                                              "start": {
                                                "line": 263,
                                                "column": 21
                                              },
                                              "end": {
                                                "line": 263,
                                                "column": 32
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 9622,
                                              "end": 9626,
                                              "loc": {
                                                "start": {
                                                  "line": 263,
                                                  "column": 21
                                                },
                                                "end": {
                                                  "line": 263,
                                                  "column": 25
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 9627,
                                              "end": 9633,
                                              "loc": {
                                                "start": {
                                                  "line": 263,
                                                  "column": 26
                                                },
                                                "end": {
                                                  "line": 263,
                                                  "column": 32
                                                }
                                              },
                                              "name": "points"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Literal",
                                            "start": 9634,
                                            "end": 9635,
                                            "loc": {
                                              "start": {
                                                "line": 263,
                                                "column": 33
                                              },
                                              "end": {
                                                "line": 263,
                                                "column": 34
                                              }
                                            },
                                            "value": 1,
                                            "rawValue": 1,
                                            "raw": "1"
                                          },
                                          "computed": true
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 9637,
                                          "end": 9645,
                                          "loc": {
                                            "start": {
                                              "line": 263,
                                              "column": 36
                                            },
                                            "end": {
                                              "line": 263,
                                              "column": 44
                                            }
                                          },
                                          "name": "position"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 9646,
                                        "end": 9651,
                                        "loc": {
                                          "start": {
                                            "line": 263,
                                            "column": 45
                                          },
                                          "end": {
                                            "line": 263,
                                            "column": 50
                                          }
                                        },
                                        "name": "clone"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 9654,
                                    "end": 9657,
                                    "loc": {
                                      "start": {
                                        "line": 263,
                                        "column": 53
                                      },
                                      "end": {
                                        "line": 263,
                                        "column": 56
                                      }
                                    },
                                    "name": "sub"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "MemberExpression",
                                    "start": 9658,
                                    "end": 9681,
                                    "loc": {
                                      "start": {
                                        "line": 263,
                                        "column": 57
                                      },
                                      "end": {
                                        "line": 263,
                                        "column": 80
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 9658,
                                      "end": 9672,
                                      "loc": {
                                        "start": {
                                          "line": 263,
                                          "column": 57
                                        },
                                        "end": {
                                          "line": 263,
                                          "column": 71
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 9658,
                                        "end": 9669,
                                        "loc": {
                                          "start": {
                                            "line": 263,
                                            "column": 57
                                          },
                                          "end": {
                                            "line": 263,
                                            "column": 68
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 9658,
                                          "end": 9662,
                                          "loc": {
                                            "start": {
                                              "line": 263,
                                              "column": 57
                                            },
                                            "end": {
                                              "line": 263,
                                              "column": 61
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 9663,
                                          "end": 9669,
                                          "loc": {
                                            "start": {
                                              "line": 263,
                                              "column": 62
                                            },
                                            "end": {
                                              "line": 263,
                                              "column": 68
                                            }
                                          },
                                          "name": "points"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Literal",
                                        "start": 9670,
                                        "end": 9671,
                                        "loc": {
                                          "start": {
                                            "line": 263,
                                            "column": 69
                                          },
                                          "end": {
                                            "line": 263,
                                            "column": 70
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      "computed": true
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 9673,
                                      "end": 9681,
                                      "loc": {
                                        "start": {
                                          "line": 263,
                                          "column": 72
                                        },
                                        "end": {
                                          "line": 263,
                                          "column": 80
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  }
                                ]
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 9683,
                                "end": 9692,
                                "loc": {
                                  "start": {
                                    "line": 263,
                                    "column": 82
                                  },
                                  "end": {
                                    "line": 263,
                                    "column": 91
                                  }
                                },
                                "name": "normalize"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 9704,
                      "end": 9747,
                      "loc": {
                        "start": {
                          "line": 264,
                          "column": 8
                        },
                        "end": {
                          "line": 264,
                          "column": 51
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 9708,
                          "end": 9746,
                          "loc": {
                            "start": {
                              "line": 264,
                              "column": 12
                            },
                            "end": {
                              "line": 264,
                              "column": 50
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 9708,
                            "end": 9713,
                            "loc": {
                              "start": {
                                "line": 264,
                                "column": 12
                              },
                              "end": {
                                "line": 264,
                                "column": 17
                              }
                            },
                            "name": "coeff"
                          },
                          "init": {
                            "type": "BinaryExpression",
                            "start": 9716,
                            "end": 9746,
                            "loc": {
                              "start": {
                                "line": 264,
                                "column": 20
                              },
                              "end": {
                                "line": 264,
                                "column": 50
                              }
                            },
                            "left": {
                              "type": "Literal",
                              "start": 9716,
                              "end": 9721,
                              "loc": {
                                "start": {
                                  "line": 264,
                                  "column": 20
                                },
                                "end": {
                                  "line": 264,
                                  "column": 25
                                }
                              },
                              "value": 10000,
                              "rawValue": 10000,
                              "raw": "10000"
                            },
                            "operator": "*",
                            "right": {
                              "type": "MemberExpression",
                              "start": 9724,
                              "end": 9746,
                              "loc": {
                                "start": {
                                  "line": 264,
                                  "column": 28
                                },
                                "end": {
                                  "line": 264,
                                  "column": 50
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 9724,
                                "end": 9744,
                                "loc": {
                                  "start": {
                                    "line": 264,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 264,
                                    "column": 48
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 9724,
                                  "end": 9738,
                                  "loc": {
                                    "start": {
                                      "line": 264,
                                      "column": 28
                                    },
                                    "end": {
                                      "line": 264,
                                      "column": 42
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 9724,
                                    "end": 9735,
                                    "loc": {
                                      "start": {
                                        "line": 264,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 264,
                                        "column": 39
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 9724,
                                      "end": 9728,
                                      "loc": {
                                        "start": {
                                          "line": 264,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 264,
                                          "column": 32
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 9729,
                                      "end": 9735,
                                      "loc": {
                                        "start": {
                                          "line": 264,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 264,
                                          "column": 39
                                        }
                                      },
                                      "name": "points"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Literal",
                                    "start": 9736,
                                    "end": 9737,
                                    "loc": {
                                      "start": {
                                        "line": 264,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 264,
                                        "column": 41
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 9739,
                                  "end": 9744,
                                  "loc": {
                                    "start": {
                                      "line": 264,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 264,
                                      "column": 48
                                    }
                                  },
                                  "name": "scale"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 9745,
                                "end": 9746,
                                "loc": {
                                  "start": {
                                    "line": 264,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 264,
                                    "column": 50
                                  }
                                },
                                "name": "x"
                              },
                              "computed": false
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 9756,
                      "end": 9868,
                      "loc": {
                        "start": {
                          "line": 265,
                          "column": 8
                        },
                        "end": {
                          "line": 265,
                          "column": 120
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 9760,
                          "end": 9867,
                          "loc": {
                            "start": {
                              "line": 265,
                              "column": 12
                            },
                            "end": {
                              "line": 265,
                              "column": 119
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 9760,
                            "end": 9761,
                            "loc": {
                              "start": {
                                "line": 265,
                                "column": 12
                              },
                              "end": {
                                "line": 265,
                                "column": 13
                              }
                            },
                            "name": "a"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 9764,
                            "end": 9867,
                            "loc": {
                              "start": {
                                "line": 265,
                                "column": 16
                              },
                              "end": {
                                "line": 265,
                                "column": 119
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 9764,
                              "end": 9799,
                              "loc": {
                                "start": {
                                  "line": 265,
                                  "column": 16
                                },
                                "end": {
                                  "line": 265,
                                  "column": 51
                                }
                              },
                              "object": {
                                "type": "CallExpression",
                                "start": 9764,
                                "end": 9795,
                                "loc": {
                                  "start": {
                                    "line": 265,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 265,
                                    "column": 47
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 9764,
                                  "end": 9793,
                                  "loc": {
                                    "start": {
                                      "line": 265,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 265,
                                      "column": 45
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 9764,
                                    "end": 9787,
                                    "loc": {
                                      "start": {
                                        "line": 265,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 265,
                                        "column": 39
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 9764,
                                      "end": 9778,
                                      "loc": {
                                        "start": {
                                          "line": 265,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 265,
                                          "column": 30
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 9764,
                                        "end": 9775,
                                        "loc": {
                                          "start": {
                                            "line": 265,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 265,
                                            "column": 27
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 9764,
                                          "end": 9768,
                                          "loc": {
                                            "start": {
                                              "line": 265,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 265,
                                              "column": 20
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 9769,
                                          "end": 9775,
                                          "loc": {
                                            "start": {
                                              "line": 265,
                                              "column": 21
                                            },
                                            "end": {
                                              "line": 265,
                                              "column": 27
                                            }
                                          },
                                          "name": "points"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Literal",
                                        "start": 9776,
                                        "end": 9777,
                                        "loc": {
                                          "start": {
                                            "line": 265,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 265,
                                            "column": 29
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      "computed": true
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 9779,
                                      "end": 9787,
                                      "loc": {
                                        "start": {
                                          "line": 265,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 265,
                                          "column": 39
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 9788,
                                    "end": 9793,
                                    "loc": {
                                      "start": {
                                        "line": 265,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 265,
                                        "column": 45
                                      }
                                    },
                                    "name": "clone"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 9796,
                                "end": 9799,
                                "loc": {
                                  "start": {
                                    "line": 265,
                                    "column": 48
                                  },
                                  "end": {
                                    "line": 265,
                                    "column": 51
                                  }
                                },
                                "name": "add"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "CallExpression",
                                "start": 9800,
                                "end": 9866,
                                "loc": {
                                  "start": {
                                    "line": 265,
                                    "column": 52
                                  },
                                  "end": {
                                    "line": 265,
                                    "column": 118
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 9800,
                                  "end": 9840,
                                  "loc": {
                                    "start": {
                                      "line": 265,
                                      "column": 52
                                    },
                                    "end": {
                                      "line": 265,
                                      "column": 92
                                    }
                                  },
                                  "object": {
                                    "type": "CallExpression",
                                    "start": 9800,
                                    "end": 9836,
                                    "loc": {
                                      "start": {
                                        "line": 265,
                                        "column": 52
                                      },
                                      "end": {
                                        "line": 265,
                                        "column": 88
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 9800,
                                      "end": 9829,
                                      "loc": {
                                        "start": {
                                          "line": 265,
                                          "column": 52
                                        },
                                        "end": {
                                          "line": 265,
                                          "column": 81
                                        }
                                      },
                                      "object": {
                                        "type": "CallExpression",
                                        "start": 9800,
                                        "end": 9814,
                                        "loc": {
                                          "start": {
                                            "line": 265,
                                            "column": 52
                                          },
                                          "end": {
                                            "line": 265,
                                            "column": 66
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 9800,
                                          "end": 9812,
                                          "loc": {
                                            "start": {
                                              "line": 265,
                                              "column": 52
                                            },
                                            "end": {
                                              "line": 265,
                                              "column": 64
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 9800,
                                            "end": 9806,
                                            "loc": {
                                              "start": {
                                                "line": 265,
                                                "column": 52
                                              },
                                              "end": {
                                                "line": 265,
                                                "column": 58
                                              }
                                            },
                                            "name": "normal"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 9807,
                                            "end": 9812,
                                            "loc": {
                                              "start": {
                                                "line": 265,
                                                "column": 59
                                              },
                                              "end": {
                                                "line": 265,
                                                "column": 64
                                              }
                                            },
                                            "name": "clone"
                                          },
                                          "computed": false
                                        },
                                        "arguments": []
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 9815,
                                        "end": 9829,
                                        "loc": {
                                          "start": {
                                            "line": 265,
                                            "column": 67
                                          },
                                          "end": {
                                            "line": 265,
                                            "column": 81
                                          }
                                        },
                                        "name": "multiplyScalar"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 9830,
                                        "end": 9835,
                                        "loc": {
                                          "start": {
                                            "line": 265,
                                            "column": 82
                                          },
                                          "end": {
                                            "line": 265,
                                            "column": 87
                                          }
                                        },
                                        "name": "coeff"
                                      }
                                    ]
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 9837,
                                    "end": 9840,
                                    "loc": {
                                      "start": {
                                        "line": 265,
                                        "column": 89
                                      },
                                      "end": {
                                        "line": 265,
                                        "column": 92
                                      }
                                    },
                                    "name": "sub"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "CallExpression",
                                    "start": 9841,
                                    "end": 9865,
                                    "loc": {
                                      "start": {
                                        "line": 265,
                                        "column": 93
                                      },
                                      "end": {
                                        "line": 265,
                                        "column": 117
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 9841,
                                      "end": 9863,
                                      "loc": {
                                        "start": {
                                          "line": 265,
                                          "column": 93
                                        },
                                        "end": {
                                          "line": 265,
                                          "column": 115
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 9841,
                                        "end": 9845,
                                        "loc": {
                                          "start": {
                                            "line": 265,
                                            "column": 93
                                          },
                                          "end": {
                                            "line": 265,
                                            "column": 97
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 9846,
                                        "end": 9863,
                                        "loc": {
                                          "start": {
                                            "line": 265,
                                            "column": 98
                                          },
                                          "end": {
                                            "line": 265,
                                            "column": 115
                                          }
                                        },
                                        "name": "getMiddlePosition"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                ]
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 9877,
                      "end": 9990,
                      "loc": {
                        "start": {
                          "line": 266,
                          "column": 8
                        },
                        "end": {
                          "line": 266,
                          "column": 121
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 9881,
                          "end": 9989,
                          "loc": {
                            "start": {
                              "line": 266,
                              "column": 12
                            },
                            "end": {
                              "line": 266,
                              "column": 120
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 9881,
                            "end": 9882,
                            "loc": {
                              "start": {
                                "line": 266,
                                "column": 12
                              },
                              "end": {
                                "line": 266,
                                "column": 13
                              }
                            },
                            "name": "b"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 9885,
                            "end": 9989,
                            "loc": {
                              "start": {
                                "line": 266,
                                "column": 16
                              },
                              "end": {
                                "line": 266,
                                "column": 120
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 9885,
                              "end": 9920,
                              "loc": {
                                "start": {
                                  "line": 266,
                                  "column": 16
                                },
                                "end": {
                                  "line": 266,
                                  "column": 51
                                }
                              },
                              "object": {
                                "type": "CallExpression",
                                "start": 9885,
                                "end": 9916,
                                "loc": {
                                  "start": {
                                    "line": 266,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 266,
                                    "column": 47
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 9885,
                                  "end": 9914,
                                  "loc": {
                                    "start": {
                                      "line": 266,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 266,
                                      "column": 45
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 9885,
                                    "end": 9908,
                                    "loc": {
                                      "start": {
                                        "line": 266,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 266,
                                        "column": 39
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 9885,
                                      "end": 9899,
                                      "loc": {
                                        "start": {
                                          "line": 266,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 266,
                                          "column": 30
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 9885,
                                        "end": 9896,
                                        "loc": {
                                          "start": {
                                            "line": 266,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 266,
                                            "column": 27
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 9885,
                                          "end": 9889,
                                          "loc": {
                                            "start": {
                                              "line": 266,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 266,
                                              "column": 20
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 9890,
                                          "end": 9896,
                                          "loc": {
                                            "start": {
                                              "line": 266,
                                              "column": 21
                                            },
                                            "end": {
                                              "line": 266,
                                              "column": 27
                                            }
                                          },
                                          "name": "points"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Literal",
                                        "start": 9897,
                                        "end": 9898,
                                        "loc": {
                                          "start": {
                                            "line": 266,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 266,
                                            "column": 29
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      "computed": true
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 9900,
                                      "end": 9908,
                                      "loc": {
                                        "start": {
                                          "line": 266,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 266,
                                          "column": 39
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 9909,
                                    "end": 9914,
                                    "loc": {
                                      "start": {
                                        "line": 266,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 266,
                                        "column": 45
                                      }
                                    },
                                    "name": "clone"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 9917,
                                "end": 9920,
                                "loc": {
                                  "start": {
                                    "line": 266,
                                    "column": 48
                                  },
                                  "end": {
                                    "line": 266,
                                    "column": 51
                                  }
                                },
                                "name": "add"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "CallExpression",
                                "start": 9921,
                                "end": 9988,
                                "loc": {
                                  "start": {
                                    "line": 266,
                                    "column": 52
                                  },
                                  "end": {
                                    "line": 266,
                                    "column": 119
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 9921,
                                  "end": 9962,
                                  "loc": {
                                    "start": {
                                      "line": 266,
                                      "column": 52
                                    },
                                    "end": {
                                      "line": 266,
                                      "column": 93
                                    }
                                  },
                                  "object": {
                                    "type": "CallExpression",
                                    "start": 9921,
                                    "end": 9958,
                                    "loc": {
                                      "start": {
                                        "line": 266,
                                        "column": 52
                                      },
                                      "end": {
                                        "line": 266,
                                        "column": 89
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 9921,
                                      "end": 9950,
                                      "loc": {
                                        "start": {
                                          "line": 266,
                                          "column": 52
                                        },
                                        "end": {
                                          "line": 266,
                                          "column": 81
                                        }
                                      },
                                      "object": {
                                        "type": "CallExpression",
                                        "start": 9921,
                                        "end": 9935,
                                        "loc": {
                                          "start": {
                                            "line": 266,
                                            "column": 52
                                          },
                                          "end": {
                                            "line": 266,
                                            "column": 66
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 9921,
                                          "end": 9933,
                                          "loc": {
                                            "start": {
                                              "line": 266,
                                              "column": 52
                                            },
                                            "end": {
                                              "line": 266,
                                              "column": 64
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 9921,
                                            "end": 9927,
                                            "loc": {
                                              "start": {
                                                "line": 266,
                                                "column": 52
                                              },
                                              "end": {
                                                "line": 266,
                                                "column": 58
                                              }
                                            },
                                            "name": "normal"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 9928,
                                            "end": 9933,
                                            "loc": {
                                              "start": {
                                                "line": 266,
                                                "column": 59
                                              },
                                              "end": {
                                                "line": 266,
                                                "column": 64
                                              }
                                            },
                                            "name": "clone"
                                          },
                                          "computed": false
                                        },
                                        "arguments": []
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 9936,
                                        "end": 9950,
                                        "loc": {
                                          "start": {
                                            "line": 266,
                                            "column": 67
                                          },
                                          "end": {
                                            "line": 266,
                                            "column": 81
                                          }
                                        },
                                        "name": "multiplyScalar"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "UnaryExpression",
                                        "start": 9951,
                                        "end": 9957,
                                        "loc": {
                                          "start": {
                                            "line": 266,
                                            "column": 82
                                          },
                                          "end": {
                                            "line": 266,
                                            "column": 88
                                          }
                                        },
                                        "operator": "-",
                                        "prefix": true,
                                        "argument": {
                                          "type": "Identifier",
                                          "start": 9952,
                                          "end": 9957,
                                          "loc": {
                                            "start": {
                                              "line": 266,
                                              "column": 83
                                            },
                                            "end": {
                                              "line": 266,
                                              "column": 88
                                            }
                                          },
                                          "name": "coeff"
                                        }
                                      }
                                    ]
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 9959,
                                    "end": 9962,
                                    "loc": {
                                      "start": {
                                        "line": 266,
                                        "column": 90
                                      },
                                      "end": {
                                        "line": 266,
                                        "column": 93
                                      }
                                    },
                                    "name": "sub"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "CallExpression",
                                    "start": 9963,
                                    "end": 9987,
                                    "loc": {
                                      "start": {
                                        "line": 266,
                                        "column": 94
                                      },
                                      "end": {
                                        "line": 266,
                                        "column": 118
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 9963,
                                      "end": 9985,
                                      "loc": {
                                        "start": {
                                          "line": 266,
                                          "column": 94
                                        },
                                        "end": {
                                          "line": 266,
                                          "column": 116
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 9963,
                                        "end": 9967,
                                        "loc": {
                                          "start": {
                                            "line": 266,
                                            "column": 94
                                          },
                                          "end": {
                                            "line": 266,
                                            "column": 98
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 9968,
                                        "end": 9985,
                                        "loc": {
                                          "start": {
                                            "line": 266,
                                            "column": 99
                                          },
                                          "end": {
                                            "line": 266,
                                            "column": 116
                                          }
                                        },
                                        "name": "getMiddlePosition"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                ]
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 9999,
                      "end": 10035,
                      "loc": {
                        "start": {
                          "line": 267,
                          "column": 8
                        },
                        "end": {
                          "line": 267,
                          "column": 44
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 10003,
                          "end": 10034,
                          "loc": {
                            "start": {
                              "line": 267,
                              "column": 12
                            },
                            "end": {
                              "line": 267,
                              "column": 43
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 10003,
                            "end": 10011,
                            "loc": {
                              "start": {
                                "line": 267,
                                "column": 12
                              },
                              "end": {
                                "line": 267,
                                "column": 20
                              }
                            },
                            "name": "geometry"
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 10014,
                            "end": 10034,
                            "loc": {
                              "start": {
                                "line": 267,
                                "column": 23
                              },
                              "end": {
                                "line": 267,
                                "column": 43
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 10018,
                              "end": 10032,
                              "loc": {
                                "start": {
                                  "line": 267,
                                  "column": 27
                                },
                                "end": {
                                  "line": 267,
                                  "column": 41
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 10018,
                                "end": 10023,
                                "loc": {
                                  "start": {
                                    "line": 267,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 267,
                                    "column": 32
                                  }
                                },
                                "name": "THREE"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 10024,
                                "end": 10032,
                                "loc": {
                                  "start": {
                                    "line": 267,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 267,
                                    "column": 41
                                  }
                                },
                                "name": "Geometry"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 10044,
                      "end": 10074,
                      "loc": {
                        "start": {
                          "line": 268,
                          "column": 8
                        },
                        "end": {
                          "line": 268,
                          "column": 38
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 10044,
                        "end": 10073,
                        "loc": {
                          "start": {
                            "line": 268,
                            "column": 8
                          },
                          "end": {
                            "line": 268,
                            "column": 37
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 10044,
                          "end": 10066,
                          "loc": {
                            "start": {
                              "line": 268,
                              "column": 8
                            },
                            "end": {
                              "line": 268,
                              "column": 30
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 10044,
                            "end": 10061,
                            "loc": {
                              "start": {
                                "line": 268,
                                "column": 8
                              },
                              "end": {
                                "line": 268,
                                "column": 25
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 10044,
                              "end": 10052,
                              "loc": {
                                "start": {
                                  "line": 268,
                                  "column": 8
                                },
                                "end": {
                                  "line": 268,
                                  "column": 16
                                }
                              },
                              "name": "geometry"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 10053,
                              "end": 10061,
                              "loc": {
                                "start": {
                                  "line": 268,
                                  "column": 17
                                },
                                "end": {
                                  "line": 268,
                                  "column": 25
                                }
                              },
                              "name": "vertices"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 10062,
                            "end": 10066,
                            "loc": {
                              "start": {
                                "line": 268,
                                "column": 26
                              },
                              "end": {
                                "line": 268,
                                "column": 30
                              }
                            },
                            "name": "push"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 10067,
                            "end": 10068,
                            "loc": {
                              "start": {
                                "line": 268,
                                "column": 31
                              },
                              "end": {
                                "line": 268,
                                "column": 32
                              }
                            },
                            "name": "a"
                          },
                          {
                            "type": "Identifier",
                            "start": 10071,
                            "end": 10072,
                            "loc": {
                              "start": {
                                "line": 268,
                                "column": 35
                              },
                              "end": {
                                "line": 268,
                                "column": 36
                              }
                            },
                            "name": "b"
                          }
                        ]
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 10083,
                      "end": 10099,
                      "loc": {
                        "start": {
                          "line": 269,
                          "column": 8
                        },
                        "end": {
                          "line": 269,
                          "column": 24
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 10090,
                        "end": 10098,
                        "loc": {
                          "start": {
                            "line": 269,
                            "column": 15
                          },
                          "end": {
                            "line": 269,
                            "column": 23
                          }
                        },
                        "name": "geometry"
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 10111,
              "end": 10790,
              "loc": {
                "start": {
                  "line": 272,
                  "column": 4
                },
                "end": {
                  "line": 283,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 10111,
                "end": 10134,
                "loc": {
                  "start": {
                    "line": 272,
                    "column": 4
                  },
                  "end": {
                    "line": 272,
                    "column": 27
                  }
                },
                "name": "updateAuxiliaryGeometry"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 10134,
                "end": 10790,
                "loc": {
                  "start": {
                    "line": 272,
                    "column": 27
                  },
                  "end": {
                    "line": 283,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 10137,
                  "end": 10790,
                  "loc": {
                    "start": {
                      "line": 272,
                      "column": 30
                    },
                    "end": {
                      "line": 283,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 10147,
                      "end": 10233,
                      "loc": {
                        "start": {
                          "line": 273,
                          "column": 8
                        },
                        "end": {
                          "line": 273,
                          "column": 94
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 10151,
                          "end": 10232,
                          "loc": {
                            "start": {
                              "line": 273,
                              "column": 12
                            },
                            "end": {
                              "line": 273,
                              "column": 93
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 10151,
                            "end": 10157,
                            "loc": {
                              "start": {
                                "line": 273,
                                "column": 12
                              },
                              "end": {
                                "line": 273,
                                "column": 18
                              }
                            },
                            "name": "normal"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 10160,
                            "end": 10232,
                            "loc": {
                              "start": {
                                "line": 273,
                                "column": 21
                              },
                              "end": {
                                "line": 273,
                                "column": 93
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 10160,
                              "end": 10230,
                              "loc": {
                                "start": {
                                  "line": 273,
                                  "column": 21
                                },
                                "end": {
                                  "line": 273,
                                  "column": 91
                                }
                              },
                              "object": {
                                "type": "CallExpression",
                                "start": 10160,
                                "end": 10220,
                                "loc": {
                                  "start": {
                                    "line": 273,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 273,
                                    "column": 81
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 10160,
                                  "end": 10195,
                                  "loc": {
                                    "start": {
                                      "line": 273,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 273,
                                      "column": 56
                                    }
                                  },
                                  "object": {
                                    "type": "CallExpression",
                                    "start": 10160,
                                    "end": 10191,
                                    "loc": {
                                      "start": {
                                        "line": 273,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 273,
                                        "column": 52
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 10160,
                                      "end": 10189,
                                      "loc": {
                                        "start": {
                                          "line": 273,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 273,
                                          "column": 50
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 10160,
                                        "end": 10183,
                                        "loc": {
                                          "start": {
                                            "line": 273,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 273,
                                            "column": 44
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 10160,
                                          "end": 10174,
                                          "loc": {
                                            "start": {
                                              "line": 273,
                                              "column": 21
                                            },
                                            "end": {
                                              "line": 273,
                                              "column": 35
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 10160,
                                            "end": 10171,
                                            "loc": {
                                              "start": {
                                                "line": 273,
                                                "column": 21
                                              },
                                              "end": {
                                                "line": 273,
                                                "column": 32
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 10160,
                                              "end": 10164,
                                              "loc": {
                                                "start": {
                                                  "line": 273,
                                                  "column": 21
                                                },
                                                "end": {
                                                  "line": 273,
                                                  "column": 25
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 10165,
                                              "end": 10171,
                                              "loc": {
                                                "start": {
                                                  "line": 273,
                                                  "column": 26
                                                },
                                                "end": {
                                                  "line": 273,
                                                  "column": 32
                                                }
                                              },
                                              "name": "points"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Literal",
                                            "start": 10172,
                                            "end": 10173,
                                            "loc": {
                                              "start": {
                                                "line": 273,
                                                "column": 33
                                              },
                                              "end": {
                                                "line": 273,
                                                "column": 34
                                              }
                                            },
                                            "value": 1,
                                            "rawValue": 1,
                                            "raw": "1"
                                          },
                                          "computed": true
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 10175,
                                          "end": 10183,
                                          "loc": {
                                            "start": {
                                              "line": 273,
                                              "column": 36
                                            },
                                            "end": {
                                              "line": 273,
                                              "column": 44
                                            }
                                          },
                                          "name": "position"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 10184,
                                        "end": 10189,
                                        "loc": {
                                          "start": {
                                            "line": 273,
                                            "column": 45
                                          },
                                          "end": {
                                            "line": 273,
                                            "column": 50
                                          }
                                        },
                                        "name": "clone"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 10192,
                                    "end": 10195,
                                    "loc": {
                                      "start": {
                                        "line": 273,
                                        "column": 53
                                      },
                                      "end": {
                                        "line": 273,
                                        "column": 56
                                      }
                                    },
                                    "name": "sub"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "MemberExpression",
                                    "start": 10196,
                                    "end": 10219,
                                    "loc": {
                                      "start": {
                                        "line": 273,
                                        "column": 57
                                      },
                                      "end": {
                                        "line": 273,
                                        "column": 80
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 10196,
                                      "end": 10210,
                                      "loc": {
                                        "start": {
                                          "line": 273,
                                          "column": 57
                                        },
                                        "end": {
                                          "line": 273,
                                          "column": 71
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 10196,
                                        "end": 10207,
                                        "loc": {
                                          "start": {
                                            "line": 273,
                                            "column": 57
                                          },
                                          "end": {
                                            "line": 273,
                                            "column": 68
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 10196,
                                          "end": 10200,
                                          "loc": {
                                            "start": {
                                              "line": 273,
                                              "column": 57
                                            },
                                            "end": {
                                              "line": 273,
                                              "column": 61
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 10201,
                                          "end": 10207,
                                          "loc": {
                                            "start": {
                                              "line": 273,
                                              "column": 62
                                            },
                                            "end": {
                                              "line": 273,
                                              "column": 68
                                            }
                                          },
                                          "name": "points"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Literal",
                                        "start": 10208,
                                        "end": 10209,
                                        "loc": {
                                          "start": {
                                            "line": 273,
                                            "column": 69
                                          },
                                          "end": {
                                            "line": 273,
                                            "column": 70
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      "computed": true
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 10211,
                                      "end": 10219,
                                      "loc": {
                                        "start": {
                                          "line": 273,
                                          "column": 72
                                        },
                                        "end": {
                                          "line": 273,
                                          "column": 80
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  }
                                ]
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 10221,
                                "end": 10230,
                                "loc": {
                                  "start": {
                                    "line": 273,
                                    "column": 82
                                  },
                                  "end": {
                                    "line": 273,
                                    "column": 91
                                  }
                                },
                                "name": "normalize"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 10242,
                      "end": 10285,
                      "loc": {
                        "start": {
                          "line": 274,
                          "column": 8
                        },
                        "end": {
                          "line": 274,
                          "column": 51
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 10246,
                          "end": 10284,
                          "loc": {
                            "start": {
                              "line": 274,
                              "column": 12
                            },
                            "end": {
                              "line": 274,
                              "column": 50
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 10246,
                            "end": 10251,
                            "loc": {
                              "start": {
                                "line": 274,
                                "column": 12
                              },
                              "end": {
                                "line": 274,
                                "column": 17
                              }
                            },
                            "name": "coeff"
                          },
                          "init": {
                            "type": "BinaryExpression",
                            "start": 10254,
                            "end": 10284,
                            "loc": {
                              "start": {
                                "line": 274,
                                "column": 20
                              },
                              "end": {
                                "line": 274,
                                "column": 50
                              }
                            },
                            "left": {
                              "type": "Literal",
                              "start": 10254,
                              "end": 10259,
                              "loc": {
                                "start": {
                                  "line": 274,
                                  "column": 20
                                },
                                "end": {
                                  "line": 274,
                                  "column": 25
                                }
                              },
                              "value": 10000,
                              "rawValue": 10000,
                              "raw": "10000"
                            },
                            "operator": "*",
                            "right": {
                              "type": "MemberExpression",
                              "start": 10262,
                              "end": 10284,
                              "loc": {
                                "start": {
                                  "line": 274,
                                  "column": 28
                                },
                                "end": {
                                  "line": 274,
                                  "column": 50
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 10262,
                                "end": 10282,
                                "loc": {
                                  "start": {
                                    "line": 274,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 274,
                                    "column": 48
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 10262,
                                  "end": 10276,
                                  "loc": {
                                    "start": {
                                      "line": 274,
                                      "column": 28
                                    },
                                    "end": {
                                      "line": 274,
                                      "column": 42
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 10262,
                                    "end": 10273,
                                    "loc": {
                                      "start": {
                                        "line": 274,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 274,
                                        "column": 39
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 10262,
                                      "end": 10266,
                                      "loc": {
                                        "start": {
                                          "line": 274,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 274,
                                          "column": 32
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 10267,
                                      "end": 10273,
                                      "loc": {
                                        "start": {
                                          "line": 274,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 274,
                                          "column": 39
                                        }
                                      },
                                      "name": "points"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Literal",
                                    "start": 10274,
                                    "end": 10275,
                                    "loc": {
                                      "start": {
                                        "line": 274,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 274,
                                        "column": 41
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 10277,
                                  "end": 10282,
                                  "loc": {
                                    "start": {
                                      "line": 274,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 274,
                                      "column": 48
                                    }
                                  },
                                  "name": "scale"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 10283,
                                "end": 10284,
                                "loc": {
                                  "start": {
                                    "line": 274,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 274,
                                    "column": 50
                                  }
                                },
                                "name": "x"
                              },
                              "computed": false
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 10294,
                      "end": 10406,
                      "loc": {
                        "start": {
                          "line": 275,
                          "column": 8
                        },
                        "end": {
                          "line": 275,
                          "column": 120
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 10298,
                          "end": 10405,
                          "loc": {
                            "start": {
                              "line": 275,
                              "column": 12
                            },
                            "end": {
                              "line": 275,
                              "column": 119
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 10298,
                            "end": 10299,
                            "loc": {
                              "start": {
                                "line": 275,
                                "column": 12
                              },
                              "end": {
                                "line": 275,
                                "column": 13
                              }
                            },
                            "name": "a"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 10302,
                            "end": 10405,
                            "loc": {
                              "start": {
                                "line": 275,
                                "column": 16
                              },
                              "end": {
                                "line": 275,
                                "column": 119
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 10302,
                              "end": 10337,
                              "loc": {
                                "start": {
                                  "line": 275,
                                  "column": 16
                                },
                                "end": {
                                  "line": 275,
                                  "column": 51
                                }
                              },
                              "object": {
                                "type": "CallExpression",
                                "start": 10302,
                                "end": 10333,
                                "loc": {
                                  "start": {
                                    "line": 275,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 275,
                                    "column": 47
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 10302,
                                  "end": 10331,
                                  "loc": {
                                    "start": {
                                      "line": 275,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 275,
                                      "column": 45
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 10302,
                                    "end": 10325,
                                    "loc": {
                                      "start": {
                                        "line": 275,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 275,
                                        "column": 39
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 10302,
                                      "end": 10316,
                                      "loc": {
                                        "start": {
                                          "line": 275,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 275,
                                          "column": 30
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 10302,
                                        "end": 10313,
                                        "loc": {
                                          "start": {
                                            "line": 275,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 275,
                                            "column": 27
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 10302,
                                          "end": 10306,
                                          "loc": {
                                            "start": {
                                              "line": 275,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 275,
                                              "column": 20
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 10307,
                                          "end": 10313,
                                          "loc": {
                                            "start": {
                                              "line": 275,
                                              "column": 21
                                            },
                                            "end": {
                                              "line": 275,
                                              "column": 27
                                            }
                                          },
                                          "name": "points"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Literal",
                                        "start": 10314,
                                        "end": 10315,
                                        "loc": {
                                          "start": {
                                            "line": 275,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 275,
                                            "column": 29
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      "computed": true
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 10317,
                                      "end": 10325,
                                      "loc": {
                                        "start": {
                                          "line": 275,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 275,
                                          "column": 39
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 10326,
                                    "end": 10331,
                                    "loc": {
                                      "start": {
                                        "line": 275,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 275,
                                        "column": 45
                                      }
                                    },
                                    "name": "clone"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 10334,
                                "end": 10337,
                                "loc": {
                                  "start": {
                                    "line": 275,
                                    "column": 48
                                  },
                                  "end": {
                                    "line": 275,
                                    "column": 51
                                  }
                                },
                                "name": "add"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "CallExpression",
                                "start": 10338,
                                "end": 10404,
                                "loc": {
                                  "start": {
                                    "line": 275,
                                    "column": 52
                                  },
                                  "end": {
                                    "line": 275,
                                    "column": 118
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 10338,
                                  "end": 10378,
                                  "loc": {
                                    "start": {
                                      "line": 275,
                                      "column": 52
                                    },
                                    "end": {
                                      "line": 275,
                                      "column": 92
                                    }
                                  },
                                  "object": {
                                    "type": "CallExpression",
                                    "start": 10338,
                                    "end": 10374,
                                    "loc": {
                                      "start": {
                                        "line": 275,
                                        "column": 52
                                      },
                                      "end": {
                                        "line": 275,
                                        "column": 88
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 10338,
                                      "end": 10367,
                                      "loc": {
                                        "start": {
                                          "line": 275,
                                          "column": 52
                                        },
                                        "end": {
                                          "line": 275,
                                          "column": 81
                                        }
                                      },
                                      "object": {
                                        "type": "CallExpression",
                                        "start": 10338,
                                        "end": 10352,
                                        "loc": {
                                          "start": {
                                            "line": 275,
                                            "column": 52
                                          },
                                          "end": {
                                            "line": 275,
                                            "column": 66
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 10338,
                                          "end": 10350,
                                          "loc": {
                                            "start": {
                                              "line": 275,
                                              "column": 52
                                            },
                                            "end": {
                                              "line": 275,
                                              "column": 64
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 10338,
                                            "end": 10344,
                                            "loc": {
                                              "start": {
                                                "line": 275,
                                                "column": 52
                                              },
                                              "end": {
                                                "line": 275,
                                                "column": 58
                                              }
                                            },
                                            "name": "normal"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 10345,
                                            "end": 10350,
                                            "loc": {
                                              "start": {
                                                "line": 275,
                                                "column": 59
                                              },
                                              "end": {
                                                "line": 275,
                                                "column": 64
                                              }
                                            },
                                            "name": "clone"
                                          },
                                          "computed": false
                                        },
                                        "arguments": []
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 10353,
                                        "end": 10367,
                                        "loc": {
                                          "start": {
                                            "line": 275,
                                            "column": 67
                                          },
                                          "end": {
                                            "line": 275,
                                            "column": 81
                                          }
                                        },
                                        "name": "multiplyScalar"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 10368,
                                        "end": 10373,
                                        "loc": {
                                          "start": {
                                            "line": 275,
                                            "column": 82
                                          },
                                          "end": {
                                            "line": 275,
                                            "column": 87
                                          }
                                        },
                                        "name": "coeff"
                                      }
                                    ]
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 10375,
                                    "end": 10378,
                                    "loc": {
                                      "start": {
                                        "line": 275,
                                        "column": 89
                                      },
                                      "end": {
                                        "line": 275,
                                        "column": 92
                                      }
                                    },
                                    "name": "sub"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "CallExpression",
                                    "start": 10379,
                                    "end": 10403,
                                    "loc": {
                                      "start": {
                                        "line": 275,
                                        "column": 93
                                      },
                                      "end": {
                                        "line": 275,
                                        "column": 117
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 10379,
                                      "end": 10401,
                                      "loc": {
                                        "start": {
                                          "line": 275,
                                          "column": 93
                                        },
                                        "end": {
                                          "line": 275,
                                          "column": 115
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 10379,
                                        "end": 10383,
                                        "loc": {
                                          "start": {
                                            "line": 275,
                                            "column": 93
                                          },
                                          "end": {
                                            "line": 275,
                                            "column": 97
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 10384,
                                        "end": 10401,
                                        "loc": {
                                          "start": {
                                            "line": 275,
                                            "column": 98
                                          },
                                          "end": {
                                            "line": 275,
                                            "column": 115
                                          }
                                        },
                                        "name": "getMiddlePosition"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                ]
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 10415,
                      "end": 10528,
                      "loc": {
                        "start": {
                          "line": 276,
                          "column": 8
                        },
                        "end": {
                          "line": 276,
                          "column": 121
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 10419,
                          "end": 10527,
                          "loc": {
                            "start": {
                              "line": 276,
                              "column": 12
                            },
                            "end": {
                              "line": 276,
                              "column": 120
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 10419,
                            "end": 10420,
                            "loc": {
                              "start": {
                                "line": 276,
                                "column": 12
                              },
                              "end": {
                                "line": 276,
                                "column": 13
                              }
                            },
                            "name": "b"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 10423,
                            "end": 10527,
                            "loc": {
                              "start": {
                                "line": 276,
                                "column": 16
                              },
                              "end": {
                                "line": 276,
                                "column": 120
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 10423,
                              "end": 10458,
                              "loc": {
                                "start": {
                                  "line": 276,
                                  "column": 16
                                },
                                "end": {
                                  "line": 276,
                                  "column": 51
                                }
                              },
                              "object": {
                                "type": "CallExpression",
                                "start": 10423,
                                "end": 10454,
                                "loc": {
                                  "start": {
                                    "line": 276,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 276,
                                    "column": 47
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 10423,
                                  "end": 10452,
                                  "loc": {
                                    "start": {
                                      "line": 276,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 276,
                                      "column": 45
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 10423,
                                    "end": 10446,
                                    "loc": {
                                      "start": {
                                        "line": 276,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 276,
                                        "column": 39
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 10423,
                                      "end": 10437,
                                      "loc": {
                                        "start": {
                                          "line": 276,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 276,
                                          "column": 30
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 10423,
                                        "end": 10434,
                                        "loc": {
                                          "start": {
                                            "line": 276,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 276,
                                            "column": 27
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 10423,
                                          "end": 10427,
                                          "loc": {
                                            "start": {
                                              "line": 276,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 276,
                                              "column": 20
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 10428,
                                          "end": 10434,
                                          "loc": {
                                            "start": {
                                              "line": 276,
                                              "column": 21
                                            },
                                            "end": {
                                              "line": 276,
                                              "column": 27
                                            }
                                          },
                                          "name": "points"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Literal",
                                        "start": 10435,
                                        "end": 10436,
                                        "loc": {
                                          "start": {
                                            "line": 276,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 276,
                                            "column": 29
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      "computed": true
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 10438,
                                      "end": 10446,
                                      "loc": {
                                        "start": {
                                          "line": 276,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 276,
                                          "column": 39
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 10447,
                                    "end": 10452,
                                    "loc": {
                                      "start": {
                                        "line": 276,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 276,
                                        "column": 45
                                      }
                                    },
                                    "name": "clone"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 10455,
                                "end": 10458,
                                "loc": {
                                  "start": {
                                    "line": 276,
                                    "column": 48
                                  },
                                  "end": {
                                    "line": 276,
                                    "column": 51
                                  }
                                },
                                "name": "add"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "CallExpression",
                                "start": 10459,
                                "end": 10526,
                                "loc": {
                                  "start": {
                                    "line": 276,
                                    "column": 52
                                  },
                                  "end": {
                                    "line": 276,
                                    "column": 119
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 10459,
                                  "end": 10500,
                                  "loc": {
                                    "start": {
                                      "line": 276,
                                      "column": 52
                                    },
                                    "end": {
                                      "line": 276,
                                      "column": 93
                                    }
                                  },
                                  "object": {
                                    "type": "CallExpression",
                                    "start": 10459,
                                    "end": 10496,
                                    "loc": {
                                      "start": {
                                        "line": 276,
                                        "column": 52
                                      },
                                      "end": {
                                        "line": 276,
                                        "column": 89
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 10459,
                                      "end": 10488,
                                      "loc": {
                                        "start": {
                                          "line": 276,
                                          "column": 52
                                        },
                                        "end": {
                                          "line": 276,
                                          "column": 81
                                        }
                                      },
                                      "object": {
                                        "type": "CallExpression",
                                        "start": 10459,
                                        "end": 10473,
                                        "loc": {
                                          "start": {
                                            "line": 276,
                                            "column": 52
                                          },
                                          "end": {
                                            "line": 276,
                                            "column": 66
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 10459,
                                          "end": 10471,
                                          "loc": {
                                            "start": {
                                              "line": 276,
                                              "column": 52
                                            },
                                            "end": {
                                              "line": 276,
                                              "column": 64
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 10459,
                                            "end": 10465,
                                            "loc": {
                                              "start": {
                                                "line": 276,
                                                "column": 52
                                              },
                                              "end": {
                                                "line": 276,
                                                "column": 58
                                              }
                                            },
                                            "name": "normal"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 10466,
                                            "end": 10471,
                                            "loc": {
                                              "start": {
                                                "line": 276,
                                                "column": 59
                                              },
                                              "end": {
                                                "line": 276,
                                                "column": 64
                                              }
                                            },
                                            "name": "clone"
                                          },
                                          "computed": false
                                        },
                                        "arguments": []
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 10474,
                                        "end": 10488,
                                        "loc": {
                                          "start": {
                                            "line": 276,
                                            "column": 67
                                          },
                                          "end": {
                                            "line": 276,
                                            "column": 81
                                          }
                                        },
                                        "name": "multiplyScalar"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "UnaryExpression",
                                        "start": 10489,
                                        "end": 10495,
                                        "loc": {
                                          "start": {
                                            "line": 276,
                                            "column": 82
                                          },
                                          "end": {
                                            "line": 276,
                                            "column": 88
                                          }
                                        },
                                        "operator": "-",
                                        "prefix": true,
                                        "argument": {
                                          "type": "Identifier",
                                          "start": 10490,
                                          "end": 10495,
                                          "loc": {
                                            "start": {
                                              "line": 276,
                                              "column": 83
                                            },
                                            "end": {
                                              "line": 276,
                                              "column": 88
                                            }
                                          },
                                          "name": "coeff"
                                        }
                                      }
                                    ]
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 10497,
                                    "end": 10500,
                                    "loc": {
                                      "start": {
                                        "line": 276,
                                        "column": 90
                                      },
                                      "end": {
                                        "line": 276,
                                        "column": 93
                                      }
                                    },
                                    "name": "sub"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "CallExpression",
                                    "start": 10501,
                                    "end": 10525,
                                    "loc": {
                                      "start": {
                                        "line": 276,
                                        "column": 94
                                      },
                                      "end": {
                                        "line": 276,
                                        "column": 118
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 10501,
                                      "end": 10523,
                                      "loc": {
                                        "start": {
                                          "line": 276,
                                          "column": 94
                                        },
                                        "end": {
                                          "line": 276,
                                          "column": 116
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 10501,
                                        "end": 10505,
                                        "loc": {
                                          "start": {
                                            "line": 276,
                                            "column": 94
                                          },
                                          "end": {
                                            "line": 276,
                                            "column": 98
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 10506,
                                        "end": 10523,
                                        "loc": {
                                          "start": {
                                            "line": 276,
                                            "column": 99
                                          },
                                          "end": {
                                            "line": 276,
                                            "column": 116
                                          }
                                        },
                                        "name": "getMiddlePosition"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                ]
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 10538,
                      "end": 10603,
                      "loc": {
                        "start": {
                          "line": 278,
                          "column": 8
                        },
                        "end": {
                          "line": 278,
                          "column": 73
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 10538,
                        "end": 10602,
                        "loc": {
                          "start": {
                            "line": 278,
                            "column": 8
                          },
                          "end": {
                            "line": 278,
                            "column": 72
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 10538,
                          "end": 10578,
                          "loc": {
                            "start": {
                              "line": 278,
                              "column": 8
                            },
                            "end": {
                              "line": 278,
                              "column": 48
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 10538,
                            "end": 10573,
                            "loc": {
                              "start": {
                                "line": 278,
                                "column": 8
                              },
                              "end": {
                                "line": 278,
                                "column": 43
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 10538,
                              "end": 10564,
                              "loc": {
                                "start": {
                                  "line": 278,
                                  "column": 8
                                },
                                "end": {
                                  "line": 278,
                                  "column": 34
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 10538,
                                "end": 10542,
                                "loc": {
                                  "start": {
                                    "line": 278,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 278,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 10543,
                                "end": 10564,
                                "loc": {
                                  "start": {
                                    "line": 278,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 278,
                                    "column": 34
                                  }
                                },
                                "name": "auxiliaryConstruction"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 10565,
                              "end": 10573,
                              "loc": {
                                "start": {
                                  "line": 278,
                                  "column": 35
                                },
                                "end": {
                                  "line": 278,
                                  "column": 43
                                }
                              },
                              "name": "position"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 10574,
                            "end": 10578,
                            "loc": {
                              "start": {
                                "line": 278,
                                "column": 44
                              },
                              "end": {
                                "line": 278,
                                "column": 48
                              }
                            },
                            "name": "copy"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 10579,
                            "end": 10601,
                            "loc": {
                              "start": {
                                "line": 278,
                                "column": 49
                              },
                              "end": {
                                "line": 278,
                                "column": 71
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 10579,
                              "end": 10592,
                              "loc": {
                                "start": {
                                  "line": 278,
                                  "column": 49
                                },
                                "end": {
                                  "line": 278,
                                  "column": 62
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 10579,
                                "end": 10583,
                                "loc": {
                                  "start": {
                                    "line": 278,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 278,
                                    "column": 53
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 10584,
                                "end": 10592,
                                "loc": {
                                  "start": {
                                    "line": 278,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 278,
                                    "column": 62
                                  }
                                },
                                "name": "interact"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 10593,
                              "end": 10601,
                              "loc": {
                                "start": {
                                  "line": 278,
                                  "column": 63
                                },
                                "end": {
                                  "line": 278,
                                  "column": 71
                                }
                              },
                              "name": "position"
                            },
                            "computed": false
                          }
                        ]
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 10612,
                      "end": 10663,
                      "loc": {
                        "start": {
                          "line": 279,
                          "column": 8
                        },
                        "end": {
                          "line": 279,
                          "column": 59
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 10616,
                          "end": 10662,
                          "loc": {
                            "start": {
                              "line": 279,
                              "column": 12
                            },
                            "end": {
                              "line": 279,
                              "column": 58
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 10616,
                            "end": 10624,
                            "loc": {
                              "start": {
                                "line": 279,
                                "column": 12
                              },
                              "end": {
                                "line": 279,
                                "column": 20
                              }
                            },
                            "name": "geometry"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 10627,
                            "end": 10662,
                            "loc": {
                              "start": {
                                "line": 279,
                                "column": 23
                              },
                              "end": {
                                "line": 279,
                                "column": 58
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 10627,
                              "end": 10653,
                              "loc": {
                                "start": {
                                  "line": 279,
                                  "column": 23
                                },
                                "end": {
                                  "line": 279,
                                  "column": 49
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 10627,
                                "end": 10631,
                                "loc": {
                                  "start": {
                                    "line": 279,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 279,
                                    "column": 27
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 10632,
                                "end": 10653,
                                "loc": {
                                  "start": {
                                    "line": 279,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 279,
                                    "column": 49
                                  }
                                },
                                "name": "auxiliaryConstruction"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 10654,
                              "end": 10662,
                              "loc": {
                                "start": {
                                  "line": 279,
                                  "column": 50
                                },
                                "end": {
                                  "line": 279,
                                  "column": 58
                                }
                              },
                              "name": "geometry"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 10672,
                      "end": 10701,
                      "loc": {
                        "start": {
                          "line": 280,
                          "column": 8
                        },
                        "end": {
                          "line": 280,
                          "column": 37
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 10672,
                        "end": 10700,
                        "loc": {
                          "start": {
                            "line": 280,
                            "column": 8
                          },
                          "end": {
                            "line": 280,
                            "column": 36
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 10672,
                          "end": 10696,
                          "loc": {
                            "start": {
                              "line": 280,
                              "column": 8
                            },
                            "end": {
                              "line": 280,
                              "column": 32
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 10672,
                            "end": 10689,
                            "loc": {
                              "start": {
                                "line": 280,
                                "column": 8
                              },
                              "end": {
                                "line": 280,
                                "column": 25
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 10672,
                              "end": 10680,
                              "loc": {
                                "start": {
                                  "line": 280,
                                  "column": 8
                                },
                                "end": {
                                  "line": 280,
                                  "column": 16
                                }
                              },
                              "name": "geometry"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 10681,
                              "end": 10689,
                              "loc": {
                                "start": {
                                  "line": 280,
                                  "column": 17
                                },
                                "end": {
                                  "line": 280,
                                  "column": 25
                                }
                              },
                              "name": "vertices"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 10690,
                            "end": 10696,
                            "loc": {
                              "start": {
                                "line": 280,
                                "column": 26
                              },
                              "end": {
                                "line": 280,
                                "column": 32
                              }
                            },
                            "name": "length"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 10699,
                          "end": 10700,
                          "loc": {
                            "start": {
                              "line": 280,
                              "column": 35
                            },
                            "end": {
                              "line": 280,
                              "column": 36
                            }
                          },
                          "value": 0,
                          "rawValue": 0,
                          "raw": "0"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 10710,
                      "end": 10740,
                      "loc": {
                        "start": {
                          "line": 281,
                          "column": 8
                        },
                        "end": {
                          "line": 281,
                          "column": 38
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 10710,
                        "end": 10739,
                        "loc": {
                          "start": {
                            "line": 281,
                            "column": 8
                          },
                          "end": {
                            "line": 281,
                            "column": 37
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 10710,
                          "end": 10732,
                          "loc": {
                            "start": {
                              "line": 281,
                              "column": 8
                            },
                            "end": {
                              "line": 281,
                              "column": 30
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 10710,
                            "end": 10727,
                            "loc": {
                              "start": {
                                "line": 281,
                                "column": 8
                              },
                              "end": {
                                "line": 281,
                                "column": 25
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 10710,
                              "end": 10718,
                              "loc": {
                                "start": {
                                  "line": 281,
                                  "column": 8
                                },
                                "end": {
                                  "line": 281,
                                  "column": 16
                                }
                              },
                              "name": "geometry"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 10719,
                              "end": 10727,
                              "loc": {
                                "start": {
                                  "line": 281,
                                  "column": 17
                                },
                                "end": {
                                  "line": 281,
                                  "column": 25
                                }
                              },
                              "name": "vertices"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 10728,
                            "end": 10732,
                            "loc": {
                              "start": {
                                "line": 281,
                                "column": 26
                              },
                              "end": {
                                "line": 281,
                                "column": 30
                              }
                            },
                            "name": "push"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 10733,
                            "end": 10734,
                            "loc": {
                              "start": {
                                "line": 281,
                                "column": 31
                              },
                              "end": {
                                "line": 281,
                                "column": 32
                              }
                            },
                            "name": "a"
                          },
                          {
                            "type": "Identifier",
                            "start": 10737,
                            "end": 10738,
                            "loc": {
                              "start": {
                                "line": 281,
                                "column": 35
                              },
                              "end": {
                                "line": 281,
                                "column": 36
                              }
                            },
                            "name": "b"
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 10749,
                      "end": 10784,
                      "loc": {
                        "start": {
                          "line": 282,
                          "column": 8
                        },
                        "end": {
                          "line": 282,
                          "column": 43
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 10749,
                        "end": 10783,
                        "loc": {
                          "start": {
                            "line": 282,
                            "column": 8
                          },
                          "end": {
                            "line": 282,
                            "column": 42
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 10749,
                          "end": 10776,
                          "loc": {
                            "start": {
                              "line": 282,
                              "column": 8
                            },
                            "end": {
                              "line": 282,
                              "column": 35
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 10749,
                            "end": 10757,
                            "loc": {
                              "start": {
                                "line": 282,
                                "column": 8
                              },
                              "end": {
                                "line": 282,
                                "column": 16
                              }
                            },
                            "name": "geometry"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 10758,
                            "end": 10776,
                            "loc": {
                              "start": {
                                "line": 282,
                                "column": 17
                              },
                              "end": {
                                "line": 282,
                                "column": 35
                              }
                            },
                            "name": "verticesNeedUpdate"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 10779,
                          "end": 10783,
                          "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": 10796,
                  "end": 10830,
                  "loc": {
                    "start": {
                      "line": 285,
                      "column": 4
                    },
                    "end": {
                      "line": 285,
                      "column": 38
                    }
                  },
                  "range": [
                    10796,
                    10830
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 10835,
              "end": 10900,
              "loc": {
                "start": {
                  "line": 286,
                  "column": 4
                },
                "end": {
                  "line": 288,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 10835,
                "end": 10849,
                "loc": {
                  "start": {
                    "line": 286,
                    "column": 4
                  },
                  "end": {
                    "line": 286,
                    "column": 18
                  }
                },
                "name": "getSizingPoint",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 10849,
                "end": 10900,
                "loc": {
                  "start": {
                    "line": 286,
                    "column": 18
                  },
                  "end": {
                    "line": 288,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 10852,
                  "end": 10900,
                  "loc": {
                    "start": {
                      "line": 286,
                      "column": 21
                    },
                    "end": {
                      "line": 288,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 10862,
                      "end": 10894,
                      "loc": {
                        "start": {
                          "line": 287,
                          "column": 8
                        },
                        "end": {
                          "line": 287,
                          "column": 40
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 10869,
                        "end": 10893,
                        "loc": {
                          "start": {
                            "line": 287,
                            "column": 15
                          },
                          "end": {
                            "line": 287,
                            "column": 39
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 10869,
                          "end": 10891,
                          "loc": {
                            "start": {
                              "line": 287,
                              "column": 15
                            },
                            "end": {
                              "line": 287,
                              "column": 37
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 10869,
                            "end": 10873,
                            "loc": {
                              "start": {
                                "line": 287,
                                "column": 15
                              },
                              "end": {
                                "line": 287,
                                "column": 19
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 10874,
                            "end": 10891,
                            "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": 10796,
                  "end": 10830,
                  "loc": {
                    "start": {
                      "line": 285,
                      "column": 4
                    },
                    "end": {
                      "line": 285,
                      "column": 38
                    }
                  },
                  "range": [
                    10796,
                    10830
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 10905,
              "end": 11073,
              "loc": {
                "start": {
                  "line": 289,
                  "column": 4
                },
                "end": {
                  "line": 293,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 10905,
                "end": 10917,
                "loc": {
                  "start": {
                    "line": 289,
                    "column": 4
                  },
                  "end": {
                    "line": 289,
                    "column": 16
                  }
                },
                "name": "setGeomSizes"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 10917,
                "end": 11073,
                "loc": {
                  "start": {
                    "line": 289,
                    "column": 16
                  },
                  "end": {
                    "line": 293,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 10918,
                    "end": 10923,
                    "loc": {
                      "start": {
                        "line": 289,
                        "column": 17
                      },
                      "end": {
                        "line": 289,
                        "column": 22
                      }
                    },
                    "name": "sizes"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 10925,
                  "end": 11073,
                  "loc": {
                    "start": {
                      "line": 289,
                      "column": 24
                    },
                    "end": {
                      "line": 293,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 10935,
                      "end": 10957,
                      "loc": {
                        "start": {
                          "line": 290,
                          "column": 8
                        },
                        "end": {
                          "line": 290,
                          "column": 30
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 10935,
                        "end": 10956,
                        "loc": {
                          "start": {
                            "line": 290,
                            "column": 8
                          },
                          "end": {
                            "line": 290,
                            "column": 29
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 10935,
                          "end": 10945,
                          "loc": {
                            "start": {
                              "line": 290,
                              "column": 8
                            },
                            "end": {
                              "line": 290,
                              "column": 18
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 10935,
                            "end": 10939,
                            "loc": {
                              "start": {
                                "line": 290,
                                "column": 8
                              },
                              "end": {
                                "line": 290,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 10940,
                            "end": 10945,
                            "loc": {
                              "start": {
                                "line": 290,
                                "column": 13
                              },
                              "end": {
                                "line": 290,
                                "column": 18
                              }
                            },
                            "name": "width"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 10948,
                          "end": 10956,
                          "loc": {
                            "start": {
                              "line": 290,
                              "column": 21
                            },
                            "end": {
                              "line": 290,
                              "column": 29
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 10948,
                            "end": 10953,
                            "loc": {
                              "start": {
                                "line": 290,
                                "column": 21
                              },
                              "end": {
                                "line": 290,
                                "column": 26
                              }
                            },
                            "name": "sizes"
                          },
                          "property": {
                            "type": "Literal",
                            "start": 10954,
                            "end": 10955,
                            "loc": {
                              "start": {
                                "line": 290,
                                "column": 27
                              },
                              "end": {
                                "line": 290,
                                "column": 28
                              }
                            },
                            "value": 0,
                            "rawValue": 0,
                            "raw": "0"
                          },
                          "computed": true
                        }
                      }
                    },
                    {
                      "type": "IfStatement",
                      "start": 10966,
                      "end": 11067,
                      "loc": {
                        "start": {
                          "line": 291,
                          "column": 8
                        },
                        "end": {
                          "line": 292,
                          "column": 62
                        }
                      },
                      "test": {
                        "type": "MemberExpression",
                        "start": 10970,
                        "end": 11003,
                        "loc": {
                          "start": {
                            "line": 291,
                            "column": 12
                          },
                          "end": {
                            "line": 291,
                            "column": 45
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 10970,
                          "end": 10995,
                          "loc": {
                            "start": {
                              "line": 291,
                              "column": 12
                            },
                            "end": {
                              "line": 291,
                              "column": 37
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 10970,
                            "end": 10974,
                            "loc": {
                              "start": {
                                "line": 291,
                                "column": 12
                              },
                              "end": {
                                "line": 291,
                                "column": 16
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 10975,
                            "end": 10995,
                            "loc": {
                              "start": {
                                "line": 291,
                                "column": 17
                              },
                              "end": {
                                "line": 291,
                                "column": 37
                              }
                            },
                            "name": "constraintsSubstrate"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 10996,
                          "end": 11003,
                          "loc": {
                            "start": {
                              "line": 291,
                              "column": 38
                            },
                            "end": {
                              "line": 291,
                              "column": 45
                            }
                          },
                          "name": "visible"
                        },
                        "computed": false
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 11017,
                        "end": 11067,
                        "loc": {
                          "start": {
                            "line": 292,
                            "column": 12
                          },
                          "end": {
                            "line": 292,
                            "column": 62
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 11017,
                          "end": 11066,
                          "loc": {
                            "start": {
                              "line": 292,
                              "column": 12
                            },
                            "end": {
                              "line": 292,
                              "column": 61
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 11017,
                            "end": 11060,
                            "loc": {
                              "start": {
                                "line": 292,
                                "column": 12
                              },
                              "end": {
                                "line": 292,
                                "column": 55
                              }
                            },
                            "object": {
                              "type": "CallExpression",
                              "start": 11017,
                              "end": 11042,
                              "loc": {
                                "start": {
                                  "line": 292,
                                  "column": 12
                                },
                                "end": {
                                  "line": 292,
                                  "column": 37
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 11017,
                                "end": 11036,
                                "loc": {
                                  "start": {
                                    "line": 292,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 292,
                                    "column": 31
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 11017,
                                  "end": 11023,
                                  "loc": {
                                    "start": {
                                      "line": 292,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 292,
                                      "column": 18
                                    }
                                  },
                                  "name": "Sketch"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 11024,
                                  "end": 11036,
                                  "loc": {
                                    "start": {
                                      "line": 292,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 292,
                                      "column": 31
                                    }
                                  },
                                  "name": "FindSketchOf"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ThisExpression",
                                  "start": 11037,
                                  "end": 11041,
                                  "loc": {
                                    "start": {
                                      "line": 292,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 292,
                                      "column": 36
                                    }
                                  }
                                }
                              ]
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11043,
                              "end": 11060,
                              "loc": {
                                "start": {
                                  "line": 292,
                                  "column": 38
                                },
                                "end": {
                                  "line": 292,
                                  "column": 55
                                }
                              },
                              "name": "updateConstraints"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "ThisExpression",
                              "start": 11061,
                              "end": 11065,
                              "loc": {
                                "start": {
                                  "line": 292,
                                  "column": 56
                                },
                                "end": {
                                  "line": 292,
                                  "column": 60
                                }
                              }
                            }
                          ]
                        }
                      },
                      "alternate": null
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 11079,
              "end": 11585,
              "loc": {
                "start": {
                  "line": 295,
                  "column": 4
                },
                "end": {
                  "line": 306,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 11079,
                "end": 11099,
                "loc": {
                  "start": {
                    "line": 295,
                    "column": 4
                  },
                  "end": {
                    "line": 295,
                    "column": 24
                  }
                },
                "name": "getSubstratePosition"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 11099,
                "end": 11585,
                "loc": {
                  "start": {
                    "line": 295,
                    "column": 24
                  },
                  "end": {
                    "line": 306,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 11100,
                    "end": 11103,
                    "loc": {
                      "start": {
                        "line": 295,
                        "column": 25
                      },
                      "end": {
                        "line": 295,
                        "column": 28
                      }
                    },
                    "name": "len"
                  },
                  {
                    "type": "Identifier",
                    "start": 11105,
                    "end": 11109,
                    "loc": {
                      "start": {
                        "line": 295,
                        "column": 30
                      },
                      "end": {
                        "line": 295,
                        "column": 34
                      }
                    },
                    "name": "size"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 11111,
                  "end": 11585,
                  "loc": {
                    "start": {
                      "line": 295,
                      "column": 36
                    },
                    "end": {
                      "line": 306,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 11121,
                      "end": 11146,
                      "loc": {
                        "start": {
                          "line": 296,
                          "column": 8
                        },
                        "end": {
                          "line": 296,
                          "column": 33
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 11125,
                          "end": 11145,
                          "loc": {
                            "start": {
                              "line": 296,
                              "column": 12
                            },
                            "end": {
                              "line": 296,
                              "column": 32
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 11125,
                            "end": 11126,
                            "loc": {
                              "start": {
                                "line": 296,
                                "column": 12
                              },
                              "end": {
                                "line": 296,
                                "column": 13
                              }
                            },
                            "name": "a"
                          },
                          "init": {
                            "type": "BinaryExpression",
                            "start": 11130,
                            "end": 11144,
                            "loc": {
                              "start": {
                                "line": 296,
                                "column": 17
                              },
                              "end": {
                                "line": 296,
                                "column": 31
                              }
                            },
                            "left": {
                              "type": "BinaryExpression",
                              "start": 11130,
                              "end": 11137,
                              "loc": {
                                "start": {
                                  "line": 296,
                                  "column": 17
                                },
                                "end": {
                                  "line": 296,
                                  "column": 24
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 11130,
                                "end": 11133,
                                "loc": {
                                  "start": {
                                    "line": 296,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 296,
                                    "column": 20
                                  }
                                },
                                "name": "len"
                              },
                              "operator": "/",
                              "right": {
                                "type": "Literal",
                                "start": 11136,
                                "end": 11137,
                                "loc": {
                                  "start": {
                                    "line": 296,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 296,
                                    "column": 24
                                  }
                                },
                                "value": 2,
                                "rawValue": 2,
                                "raw": "2"
                              }
                            },
                            "operator": "+",
                            "right": {
                              "type": "Identifier",
                              "start": 11140,
                              "end": 11144,
                              "loc": {
                                "start": {
                                  "line": 296,
                                  "column": 27
                                },
                                "end": {
                                  "line": 296,
                                  "column": 31
                                }
                              },
                              "name": "size"
                            },
                            "parenthesizedExpression": true
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 11155,
                      "end": 11181,
                      "loc": {
                        "start": {
                          "line": 297,
                          "column": 8
                        },
                        "end": {
                          "line": 297,
                          "column": 34
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 11159,
                          "end": 11180,
                          "loc": {
                            "start": {
                              "line": 297,
                              "column": 12
                            },
                            "end": {
                              "line": 297,
                              "column": 33
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 11159,
                            "end": 11160,
                            "loc": {
                              "start": {
                                "line": 297,
                                "column": 12
                              },
                              "end": {
                                "line": 297,
                                "column": 13
                              }
                            },
                            "name": "b"
                          },
                          "init": {
                            "type": "BinaryExpression",
                            "start": 11164,
                            "end": 11179,
                            "loc": {
                              "start": {
                                "line": 297,
                                "column": 17
                              },
                              "end": {
                                "line": 297,
                                "column": 32
                              }
                            },
                            "left": {
                              "type": "BinaryExpression",
                              "start": 11164,
                              "end": 11172,
                              "loc": {
                                "start": {
                                  "line": 297,
                                  "column": 17
                                },
                                "end": {
                                  "line": 297,
                                  "column": 25
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 11164,
                                "end": 11168,
                                "loc": {
                                  "start": {
                                    "line": 297,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 297,
                                    "column": 21
                                  }
                                },
                                "name": "size"
                              },
                              "operator": "/",
                              "right": {
                                "type": "Literal",
                                "start": 11171,
                                "end": 11172,
                                "loc": {
                                  "start": {
                                    "line": 297,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 297,
                                    "column": 25
                                  }
                                },
                                "value": 2,
                                "rawValue": 2,
                                "raw": "2"
                              }
                            },
                            "operator": "+",
                            "right": {
                              "type": "Identifier",
                              "start": 11175,
                              "end": 11179,
                              "loc": {
                                "start": {
                                  "line": 297,
                                  "column": 28
                                },
                                "end": {
                                  "line": 297,
                                  "column": 32
                                }
                              },
                              "name": "size"
                            },
                            "parenthesizedExpression": true
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 11191,
                      "end": 11265,
                      "loc": {
                        "start": {
                          "line": 299,
                          "column": 8
                        },
                        "end": {
                          "line": 299,
                          "column": 82
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 11195,
                          "end": 11264,
                          "loc": {
                            "start": {
                              "line": 299,
                              "column": 12
                            },
                            "end": {
                              "line": 299,
                              "column": 81
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 11195,
                            "end": 11201,
                            "loc": {
                              "start": {
                                "line": 299,
                                "column": 12
                              },
                              "end": {
                                "line": 299,
                                "column": 18
                              }
                            },
                            "name": "vector"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 11204,
                            "end": 11264,
                            "loc": {
                              "start": {
                                "line": 299,
                                "column": 21
                              },
                              "end": {
                                "line": 299,
                                "column": 81
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 11204,
                              "end": 11239,
                              "loc": {
                                "start": {
                                  "line": 299,
                                  "column": 21
                                },
                                "end": {
                                  "line": 299,
                                  "column": 56
                                }
                              },
                              "object": {
                                "type": "CallExpression",
                                "start": 11204,
                                "end": 11235,
                                "loc": {
                                  "start": {
                                    "line": 299,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 299,
                                    "column": 52
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 11204,
                                  "end": 11233,
                                  "loc": {
                                    "start": {
                                      "line": 299,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 299,
                                      "column": 50
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 11204,
                                    "end": 11227,
                                    "loc": {
                                      "start": {
                                        "line": 299,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 299,
                                        "column": 44
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 11204,
                                      "end": 11218,
                                      "loc": {
                                        "start": {
                                          "line": 299,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 299,
                                          "column": 35
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 11204,
                                        "end": 11215,
                                        "loc": {
                                          "start": {
                                            "line": 299,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 299,
                                            "column": 32
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 11204,
                                          "end": 11208,
                                          "loc": {
                                            "start": {
                                              "line": 299,
                                              "column": 21
                                            },
                                            "end": {
                                              "line": 299,
                                              "column": 25
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 11209,
                                          "end": 11215,
                                          "loc": {
                                            "start": {
                                              "line": 299,
                                              "column": 26
                                            },
                                            "end": {
                                              "line": 299,
                                              "column": 32
                                            }
                                          },
                                          "name": "points"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Literal",
                                        "start": 11216,
                                        "end": 11217,
                                        "loc": {
                                          "start": {
                                            "line": 299,
                                            "column": 33
                                          },
                                          "end": {
                                            "line": 299,
                                            "column": 34
                                          }
                                        },
                                        "value": 1,
                                        "rawValue": 1,
                                        "raw": "1"
                                      },
                                      "computed": true
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 11219,
                                      "end": 11227,
                                      "loc": {
                                        "start": {
                                          "line": 299,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 299,
                                          "column": 44
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 11228,
                                    "end": 11233,
                                    "loc": {
                                      "start": {
                                        "line": 299,
                                        "column": 45
                                      },
                                      "end": {
                                        "line": 299,
                                        "column": 50
                                      }
                                    },
                                    "name": "clone"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 11236,
                                "end": 11239,
                                "loc": {
                                  "start": {
                                    "line": 299,
                                    "column": 53
                                  },
                                  "end": {
                                    "line": 299,
                                    "column": 56
                                  }
                                },
                                "name": "sub"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 11240,
                                "end": 11263,
                                "loc": {
                                  "start": {
                                    "line": 299,
                                    "column": 57
                                  },
                                  "end": {
                                    "line": 299,
                                    "column": 80
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 11240,
                                  "end": 11254,
                                  "loc": {
                                    "start": {
                                      "line": 299,
                                      "column": 57
                                    },
                                    "end": {
                                      "line": 299,
                                      "column": 71
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 11240,
                                    "end": 11251,
                                    "loc": {
                                      "start": {
                                        "line": 299,
                                        "column": 57
                                      },
                                      "end": {
                                        "line": 299,
                                        "column": 68
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 11240,
                                      "end": 11244,
                                      "loc": {
                                        "start": {
                                          "line": 299,
                                          "column": 57
                                        },
                                        "end": {
                                          "line": 299,
                                          "column": 61
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 11245,
                                      "end": 11251,
                                      "loc": {
                                        "start": {
                                          "line": 299,
                                          "column": 62
                                        },
                                        "end": {
                                          "line": 299,
                                          "column": 68
                                        }
                                      },
                                      "name": "points"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Literal",
                                    "start": 11252,
                                    "end": 11253,
                                    "loc": {
                                      "start": {
                                        "line": 299,
                                        "column": 69
                                      },
                                      "end": {
                                        "line": 299,
                                        "column": 70
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 11255,
                                  "end": 11263,
                                  "loc": {
                                    "start": {
                                      "line": 299,
                                      "column": 72
                                    },
                                    "end": {
                                      "line": 299,
                                      "column": 80
                                    }
                                  },
                                  "name": "position"
                                },
                                "computed": false
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 11274,
                      "end": 11328,
                      "loc": {
                        "start": {
                          "line": 300,
                          "column": 8
                        },
                        "end": {
                          "line": 300,
                          "column": 62
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 11278,
                          "end": 11327,
                          "loc": {
                            "start": {
                              "line": 300,
                              "column": 12
                            },
                            "end": {
                              "line": 300,
                              "column": 61
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 11278,
                            "end": 11283,
                            "loc": {
                              "start": {
                                "line": 300,
                                "column": 12
                              },
                              "end": {
                                "line": 300,
                                "column": 17
                              }
                            },
                            "name": "angle"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 11287,
                            "end": 11327,
                            "loc": {
                              "start": {
                                "line": 300,
                                "column": 21
                              },
                              "end": {
                                "line": 300,
                                "column": 61
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 11287,
                              "end": 11301,
                              "loc": {
                                "start": {
                                  "line": 300,
                                  "column": 21
                                },
                                "end": {
                                  "line": 300,
                                  "column": 35
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 11287,
                                "end": 11293,
                                "loc": {
                                  "start": {
                                    "line": 300,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 300,
                                    "column": 27
                                  }
                                },
                                "name": "vector"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 11294,
                                "end": 11301,
                                "loc": {
                                  "start": {
                                    "line": 300,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 300,
                                    "column": 35
                                  }
                                },
                                "name": "angleTo"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "NewExpression",
                                "start": 11302,
                                "end": 11326,
                                "loc": {
                                  "start": {
                                    "line": 300,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 300,
                                    "column": 60
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 11306,
                                  "end": 11319,
                                  "loc": {
                                    "start": {
                                      "line": 300,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 300,
                                      "column": 53
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 11306,
                                    "end": 11311,
                                    "loc": {
                                      "start": {
                                        "line": 300,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 300,
                                        "column": 45
                                      }
                                    },
                                    "name": "THREE"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 11312,
                                    "end": 11319,
                                    "loc": {
                                      "start": {
                                        "line": 300,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 300,
                                        "column": 53
                                      }
                                    },
                                    "name": "Vector3"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Literal",
                                    "start": 11320,
                                    "end": 11321,
                                    "loc": {
                                      "start": {
                                        "line": 300,
                                        "column": 54
                                      },
                                      "end": {
                                        "line": 300,
                                        "column": 55
                                      }
                                    },
                                    "value": 1,
                                    "rawValue": 1,
                                    "raw": "1"
                                  },
                                  {
                                    "type": "Literal",
                                    "start": 11322,
                                    "end": 11323,
                                    "loc": {
                                      "start": {
                                        "line": 300,
                                        "column": 56
                                      },
                                      "end": {
                                        "line": 300,
                                        "column": 57
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  {
                                    "type": "Literal",
                                    "start": 11324,
                                    "end": 11325,
                                    "loc": {
                                      "start": {
                                        "line": 300,
                                        "column": 58
                                      },
                                      "end": {
                                        "line": 300,
                                        "column": 59
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  }
                                ]
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 11337,
                      "end": 11403,
                      "loc": {
                        "start": {
                          "line": 301,
                          "column": 8
                        },
                        "end": {
                          "line": 301,
                          "column": 74
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 11341,
                          "end": 11402,
                          "loc": {
                            "start": {
                              "line": 301,
                              "column": 12
                            },
                            "end": {
                              "line": 301,
                              "column": 73
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 11341,
                            "end": 11345,
                            "loc": {
                              "start": {
                                "line": 301,
                                "column": 12
                              },
                              "end": {
                                "line": 301,
                                "column": 16
                              }
                            },
                            "name": "sign"
                          },
                          "init": {
                            "type": "ConditionalExpression",
                            "start": 11348,
                            "end": 11402,
                            "loc": {
                              "start": {
                                "line": 301,
                                "column": 19
                              },
                              "end": {
                                "line": 301,
                                "column": 73
                              }
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 11348,
                              "end": 11393,
                              "loc": {
                                "start": {
                                  "line": 301,
                                  "column": 19
                                },
                                "end": {
                                  "line": 301,
                                  "column": 64
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 11348,
                                "end": 11388,
                                "loc": {
                                  "start": {
                                    "line": 301,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 301,
                                    "column": 59
                                  }
                                },
                                "object": {
                                  "type": "CallExpression",
                                  "start": 11348,
                                  "end": 11386,
                                  "loc": {
                                    "start": {
                                      "line": 301,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 301,
                                      "column": 57
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 11348,
                                    "end": 11360,
                                    "loc": {
                                      "start": {
                                        "line": 301,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 301,
                                        "column": 31
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 11348,
                                      "end": 11354,
                                      "loc": {
                                        "start": {
                                          "line": 301,
                                          "column": 19
                                        },
                                        "end": {
                                          "line": 301,
                                          "column": 25
                                        }
                                      },
                                      "name": "vector"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 11355,
                                      "end": 11360,
                                      "loc": {
                                        "start": {
                                          "line": 301,
                                          "column": 26
                                        },
                                        "end": {
                                          "line": 301,
                                          "column": 31
                                        }
                                      },
                                      "name": "cross"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "NewExpression",
                                      "start": 11361,
                                      "end": 11385,
                                      "loc": {
                                        "start": {
                                          "line": 301,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 301,
                                          "column": 56
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 11365,
                                        "end": 11378,
                                        "loc": {
                                          "start": {
                                            "line": 301,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 301,
                                            "column": 49
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 11365,
                                          "end": 11370,
                                          "loc": {
                                            "start": {
                                              "line": 301,
                                              "column": 36
                                            },
                                            "end": {
                                              "line": 301,
                                              "column": 41
                                            }
                                          },
                                          "name": "THREE"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 11371,
                                          "end": 11378,
                                          "loc": {
                                            "start": {
                                              "line": 301,
                                              "column": 42
                                            },
                                            "end": {
                                              "line": 301,
                                              "column": 49
                                            }
                                          },
                                          "name": "Vector3"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Literal",
                                          "start": 11379,
                                          "end": 11380,
                                          "loc": {
                                            "start": {
                                              "line": 301,
                                              "column": 50
                                            },
                                            "end": {
                                              "line": 301,
                                              "column": 51
                                            }
                                          },
                                          "value": 1,
                                          "rawValue": 1,
                                          "raw": "1"
                                        },
                                        {
                                          "type": "Literal",
                                          "start": 11381,
                                          "end": 11382,
                                          "loc": {
                                            "start": {
                                              "line": 301,
                                              "column": 52
                                            },
                                            "end": {
                                              "line": 301,
                                              "column": 53
                                            }
                                          },
                                          "value": 0,
                                          "rawValue": 0,
                                          "raw": "0"
                                        },
                                        {
                                          "type": "Literal",
                                          "start": 11383,
                                          "end": 11384,
                                          "loc": {
                                            "start": {
                                              "line": 301,
                                              "column": 54
                                            },
                                            "end": {
                                              "line": 301,
                                              "column": 55
                                            }
                                          },
                                          "value": 0,
                                          "rawValue": 0,
                                          "raw": "0"
                                        }
                                      ]
                                    }
                                  ]
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 11387,
                                  "end": 11388,
                                  "loc": {
                                    "start": {
                                      "line": 301,
                                      "column": 58
                                    },
                                    "end": {
                                      "line": 301,
                                      "column": 59
                                    }
                                  },
                                  "name": "z"
                                },
                                "computed": false
                              },
                              "operator": ">=",
                              "right": {
                                "type": "Literal",
                                "start": 11392,
                                "end": 11393,
                                "loc": {
                                  "start": {
                                    "line": 301,
                                    "column": 63
                                  },
                                  "end": {
                                    "line": 301,
                                    "column": 64
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0"
                              }
                            },
                            "consequent": {
                              "type": "UnaryExpression",
                              "start": 11396,
                              "end": 11398,
                              "loc": {
                                "start": {
                                  "line": 301,
                                  "column": 67
                                },
                                "end": {
                                  "line": 301,
                                  "column": 69
                                }
                              },
                              "operator": "-",
                              "prefix": true,
                              "argument": {
                                "type": "Literal",
                                "start": 11397,
                                "end": 11398,
                                "loc": {
                                  "start": {
                                    "line": 301,
                                    "column": 68
                                  },
                                  "end": {
                                    "line": 301,
                                    "column": 69
                                  }
                                },
                                "value": 1,
                                "rawValue": 1,
                                "raw": "1"
                              }
                            },
                            "alternate": {
                              "type": "Literal",
                              "start": 11401,
                              "end": 11402,
                              "loc": {
                                "start": {
                                  "line": 301,
                                  "column": 72
                                },
                                "end": {
                                  "line": 301,
                                  "column": 73
                                }
                              },
                              "value": 1,
                              "rawValue": 1,
                              "raw": "1"
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 11412,
                      "end": 11447,
                      "loc": {
                        "start": {
                          "line": 302,
                          "column": 8
                        },
                        "end": {
                          "line": 302,
                          "column": 43
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 11412,
                        "end": 11446,
                        "loc": {
                          "start": {
                            "line": 302,
                            "column": 8
                          },
                          "end": {
                            "line": 302,
                            "column": 42
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 11412,
                          "end": 11417,
                          "loc": {
                            "start": {
                              "line": 302,
                              "column": 8
                            },
                            "end": {
                              "line": 302,
                              "column": 13
                            }
                          },
                          "name": "angle"
                        },
                        "right": {
                          "type": "BinaryExpression",
                          "start": 11420,
                          "end": 11446,
                          "loc": {
                            "start": {
                              "line": 302,
                              "column": 16
                            },
                            "end": {
                              "line": 302,
                              "column": 42
                            }
                          },
                          "left": {
                            "type": "BinaryExpression",
                            "start": 11420,
                            "end": 11432,
                            "loc": {
                              "start": {
                                "line": 302,
                                "column": 16
                              },
                              "end": {
                                "line": 302,
                                "column": 28
                              }
                            },
                            "left": {
                              "type": "Identifier",
                              "start": 11420,
                              "end": 11425,
                              "loc": {
                                "start": {
                                  "line": 302,
                                  "column": 16
                                },
                                "end": {
                                  "line": 302,
                                  "column": 21
                                }
                              },
                              "name": "angle"
                            },
                            "operator": "*",
                            "right": {
                              "type": "Identifier",
                              "start": 11428,
                              "end": 11432,
                              "loc": {
                                "start": {
                                  "line": 302,
                                  "column": 24
                                },
                                "end": {
                                  "line": 302,
                                  "column": 28
                                }
                              },
                              "name": "sign"
                            }
                          },
                          "operator": "-",
                          "right": {
                            "type": "BinaryExpression",
                            "start": 11435,
                            "end": 11446,
                            "loc": {
                              "start": {
                                "line": 302,
                                "column": 31
                              },
                              "end": {
                                "line": 302,
                                "column": 42
                              }
                            },
                            "left": {
                              "type": "MemberExpression",
                              "start": 11435,
                              "end": 11442,
                              "loc": {
                                "start": {
                                  "line": 302,
                                  "column": 31
                                },
                                "end": {
                                  "line": 302,
                                  "column": 38
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 11435,
                                "end": 11439,
                                "loc": {
                                  "start": {
                                    "line": 302,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 302,
                                    "column": 35
                                  }
                                },
                                "name": "Math"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 11440,
                                "end": 11442,
                                "loc": {
                                  "start": {
                                    "line": 302,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 302,
                                    "column": 38
                                  }
                                },
                                "name": "PI"
                              },
                              "computed": false
                            },
                            "operator": "/",
                            "right": {
                              "type": "Literal",
                              "start": 11445,
                              "end": 11446,
                              "loc": {
                                "start": {
                                  "line": 302,
                                  "column": 41
                                },
                                "end": {
                                  "line": 302,
                                  "column": 42
                                }
                              },
                              "value": 2,
                              "rawValue": 2,
                              "raw": "2"
                            }
                          }
                        }
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 11457,
                      "end": 11559,
                      "loc": {
                        "start": {
                          "line": 304,
                          "column": 8
                        },
                        "end": {
                          "line": 304,
                          "column": 110
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 11461,
                          "end": 11558,
                          "loc": {
                            "start": {
                              "line": 304,
                              "column": 12
                            },
                            "end": {
                              "line": 304,
                              "column": 109
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 11461,
                            "end": 11464,
                            "loc": {
                              "start": {
                                "line": 304,
                                "column": 12
                              },
                              "end": {
                                "line": 304,
                                "column": 15
                              }
                            },
                            "name": "pos"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 11467,
                            "end": 11558,
                            "loc": {
                              "start": {
                                "line": 304,
                                "column": 18
                              },
                              "end": {
                                "line": 304,
                                "column": 109
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 11467,
                              "end": 11495,
                              "loc": {
                                "start": {
                                  "line": 304,
                                  "column": 18
                                },
                                "end": {
                                  "line": 304,
                                  "column": 46
                                }
                              },
                              "object": {
                                "type": "CallExpression",
                                "start": 11467,
                                "end": 11491,
                                "loc": {
                                  "start": {
                                    "line": 304,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 304,
                                    "column": 42
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 11467,
                                  "end": 11489,
                                  "loc": {
                                    "start": {
                                      "line": 304,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 304,
                                      "column": 40
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 11467,
                                    "end": 11471,
                                    "loc": {
                                      "start": {
                                        "line": 304,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 304,
                                        "column": 22
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 11472,
                                    "end": 11489,
                                    "loc": {
                                      "start": {
                                        "line": 304,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 304,
                                        "column": 40
                                      }
                                    },
                                    "name": "getMiddlePosition"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 11492,
                                "end": 11495,
                                "loc": {
                                  "start": {
                                    "line": 304,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 304,
                                    "column": 46
                                  }
                                },
                                "name": "add"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "NewExpression",
                                "start": 11496,
                                "end": 11557,
                                "loc": {
                                  "start": {
                                    "line": 304,
                                    "column": 47
                                  },
                                  "end": {
                                    "line": 304,
                                    "column": 108
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 11500,
                                  "end": 11513,
                                  "loc": {
                                    "start": {
                                      "line": 304,
                                      "column": 51
                                    },
                                    "end": {
                                      "line": 304,
                                      "column": 64
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 11500,
                                    "end": 11505,
                                    "loc": {
                                      "start": {
                                        "line": 304,
                                        "column": 51
                                      },
                                      "end": {
                                        "line": 304,
                                        "column": 56
                                      }
                                    },
                                    "name": "THREE"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 11506,
                                    "end": 11513,
                                    "loc": {
                                      "start": {
                                        "line": 304,
                                        "column": 57
                                      },
                                      "end": {
                                        "line": 304,
                                        "column": 64
                                      }
                                    },
                                    "name": "Vector3"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "BinaryExpression",
                                    "start": 11514,
                                    "end": 11533,
                                    "loc": {
                                      "start": {
                                        "line": 304,
                                        "column": 65
                                      },
                                      "end": {
                                        "line": 304,
                                        "column": 84
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 11514,
                                      "end": 11515,
                                      "loc": {
                                        "start": {
                                          "line": 304,
                                          "column": 65
                                        },
                                        "end": {
                                          "line": 304,
                                          "column": 66
                                        }
                                      },
                                      "name": "a"
                                    },
                                    "operator": "*",
                                    "right": {
                                      "type": "CallExpression",
                                      "start": 11518,
                                      "end": 11533,
                                      "loc": {
                                        "start": {
                                          "line": 304,
                                          "column": 69
                                        },
                                        "end": {
                                          "line": 304,
                                          "column": 84
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 11518,
                                        "end": 11526,
                                        "loc": {
                                          "start": {
                                            "line": 304,
                                            "column": 69
                                          },
                                          "end": {
                                            "line": 304,
                                            "column": 77
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 11518,
                                          "end": 11522,
                                          "loc": {
                                            "start": {
                                              "line": 304,
                                              "column": 69
                                            },
                                            "end": {
                                              "line": 304,
                                              "column": 73
                                            }
                                          },
                                          "name": "Math"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 11523,
                                          "end": 11526,
                                          "loc": {
                                            "start": {
                                              "line": 304,
                                              "column": 74
                                            },
                                            "end": {
                                              "line": 304,
                                              "column": 77
                                            }
                                          },
                                          "name": "cos"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 11527,
                                          "end": 11532,
                                          "loc": {
                                            "start": {
                                              "line": 304,
                                              "column": 78
                                            },
                                            "end": {
                                              "line": 304,
                                              "column": 83
                                            }
                                          },
                                          "name": "angle"
                                        }
                                      ]
                                    }
                                  },
                                  {
                                    "type": "BinaryExpression",
                                    "start": 11535,
                                    "end": 11554,
                                    "loc": {
                                      "start": {
                                        "line": 304,
                                        "column": 86
                                      },
                                      "end": {
                                        "line": 304,
                                        "column": 105
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 11535,
                                      "end": 11536,
                                      "loc": {
                                        "start": {
                                          "line": 304,
                                          "column": 86
                                        },
                                        "end": {
                                          "line": 304,
                                          "column": 87
                                        }
                                      },
                                      "name": "b"
                                    },
                                    "operator": "*",
                                    "right": {
                                      "type": "CallExpression",
                                      "start": 11539,
                                      "end": 11554,
                                      "loc": {
                                        "start": {
                                          "line": 304,
                                          "column": 90
                                        },
                                        "end": {
                                          "line": 304,
                                          "column": 105
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 11539,
                                        "end": 11547,
                                        "loc": {
                                          "start": {
                                            "line": 304,
                                            "column": 90
                                          },
                                          "end": {
                                            "line": 304,
                                            "column": 98
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 11539,
                                          "end": 11543,
                                          "loc": {
                                            "start": {
                                              "line": 304,
                                              "column": 90
                                            },
                                            "end": {
                                              "line": 304,
                                              "column": 94
                                            }
                                          },
                                          "name": "Math"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 11544,
                                          "end": 11547,
                                          "loc": {
                                            "start": {
                                              "line": 304,
                                              "column": 95
                                            },
                                            "end": {
                                              "line": 304,
                                              "column": 98
                                            }
                                          },
                                          "name": "sin"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 11548,
                                          "end": 11553,
                                          "loc": {
                                            "start": {
                                              "line": 304,
                                              "column": 99
                                            },
                                            "end": {
                                              "line": 304,
                                              "column": 104
                                            }
                                          },
                                          "name": "angle"
                                        }
                                      ]
                                    }
                                  },
                                  {
                                    "type": "Literal",
                                    "start": 11555,
                                    "end": 11556,
                                    "loc": {
                                      "start": {
                                        "line": 304,
                                        "column": 106
                                      },
                                      "end": {
                                        "line": 304,
                                        "column": 107
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  }
                                ]
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 11568,
                      "end": 11579,
                      "loc": {
                        "start": {
                          "line": 305,
                          "column": 8
                        },
                        "end": {
                          "line": 305,
                          "column": 19
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 11575,
                        "end": 11578,
                        "loc": {
                          "start": {
                            "line": 305,
                            "column": 15
                          },
                          "end": {
                            "line": 305,
                            "column": 18
                          }
                        },
                        "name": "pos"
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 11591,
              "end": 12350,
              "loc": {
                "start": {
                  "line": 308,
                  "column": 4
                },
                "end": {
                  "line": 324,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 11591,
                "end": 11610,
                "loc": {
                  "start": {
                    "line": 308,
                    "column": 4
                  },
                  "end": {
                    "line": 308,
                    "column": 23
                  }
                },
                "name": "updateVisualization"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 11610,
                "end": 12350,
                "loc": {
                  "start": {
                    "line": 308,
                    "column": 23
                  },
                  "end": {
                    "line": 324,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 11613,
                  "end": 12350,
                  "loc": {
                    "start": {
                      "line": 308,
                      "column": 26
                    },
                    "end": {
                      "line": 324,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 11623,
                      "end": 11694,
                      "loc": {
                        "start": {
                          "line": 309,
                          "column": 8
                        },
                        "end": {
                          "line": 309,
                          "column": 79
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 11627,
                          "end": 11693,
                          "loc": {
                            "start": {
                              "line": 309,
                              "column": 12
                            },
                            "end": {
                              "line": 309,
                              "column": 78
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 11627,
                            "end": 11631,
                            "loc": {
                              "start": {
                                "line": 309,
                                "column": 12
                              },
                              "end": {
                                "line": 309,
                                "column": 16
                              }
                            },
                            "name": "xMax"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 11634,
                            "end": 11693,
                            "loc": {
                              "start": {
                                "line": 309,
                                "column": 19
                              },
                              "end": {
                                "line": 309,
                                "column": 78
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 11634,
                              "end": 11668,
                              "loc": {
                                "start": {
                                  "line": 309,
                                  "column": 19
                                },
                                "end": {
                                  "line": 309,
                                  "column": 53
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 11634,
                                "end": 11657,
                                "loc": {
                                  "start": {
                                    "line": 309,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 309,
                                    "column": 42
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 11634,
                                  "end": 11648,
                                  "loc": {
                                    "start": {
                                      "line": 309,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 309,
                                      "column": 33
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 11634,
                                    "end": 11645,
                                    "loc": {
                                      "start": {
                                        "line": 309,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 309,
                                        "column": 30
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 11634,
                                      "end": 11638,
                                      "loc": {
                                        "start": {
                                          "line": 309,
                                          "column": 19
                                        },
                                        "end": {
                                          "line": 309,
                                          "column": 23
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 11639,
                                      "end": 11645,
                                      "loc": {
                                        "start": {
                                          "line": 309,
                                          "column": 24
                                        },
                                        "end": {
                                          "line": 309,
                                          "column": 30
                                        }
                                      },
                                      "name": "points"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Literal",
                                    "start": 11646,
                                    "end": 11647,
                                    "loc": {
                                      "start": {
                                        "line": 309,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 309,
                                        "column": 32
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 11649,
                                  "end": 11657,
                                  "loc": {
                                    "start": {
                                      "line": 309,
                                      "column": 34
                                    },
                                    "end": {
                                      "line": 309,
                                      "column": 42
                                    }
                                  },
                                  "name": "position"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 11658,
                                "end": 11668,
                                "loc": {
                                  "start": {
                                    "line": 309,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 309,
                                    "column": 53
                                  }
                                },
                                "name": "distanceTo"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 11669,
                                "end": 11692,
                                "loc": {
                                  "start": {
                                    "line": 309,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 309,
                                    "column": 77
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 11669,
                                  "end": 11683,
                                  "loc": {
                                    "start": {
                                      "line": 309,
                                      "column": 54
                                    },
                                    "end": {
                                      "line": 309,
                                      "column": 68
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 11669,
                                    "end": 11680,
                                    "loc": {
                                      "start": {
                                        "line": 309,
                                        "column": 54
                                      },
                                      "end": {
                                        "line": 309,
                                        "column": 65
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 11669,
                                      "end": 11673,
                                      "loc": {
                                        "start": {
                                          "line": 309,
                                          "column": 54
                                        },
                                        "end": {
                                          "line": 309,
                                          "column": 58
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 11674,
                                      "end": 11680,
                                      "loc": {
                                        "start": {
                                          "line": 309,
                                          "column": 59
                                        },
                                        "end": {
                                          "line": 309,
                                          "column": 65
                                        }
                                      },
                                      "name": "points"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Literal",
                                    "start": 11681,
                                    "end": 11682,
                                    "loc": {
                                      "start": {
                                        "line": 309,
                                        "column": 66
                                      },
                                      "end": {
                                        "line": 309,
                                        "column": 67
                                      }
                                    },
                                    "value": 1,
                                    "rawValue": 1,
                                    "raw": "1"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 11684,
                                  "end": 11692,
                                  "loc": {
                                    "start": {
                                      "line": 309,
                                      "column": 69
                                    },
                                    "end": {
                                      "line": 309,
                                      "column": 77
                                    }
                                  },
                                  "name": "position"
                                },
                                "computed": false
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 11703,
                      "end": 11725,
                      "loc": {
                        "start": {
                          "line": 310,
                          "column": 8
                        },
                        "end": {
                          "line": 310,
                          "column": 30
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 11707,
                          "end": 11724,
                          "loc": {
                            "start": {
                              "line": 310,
                              "column": 12
                            },
                            "end": {
                              "line": 310,
                              "column": 29
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 11707,
                            "end": 11711,
                            "loc": {
                              "start": {
                                "line": 310,
                                "column": 12
                              },
                              "end": {
                                "line": 310,
                                "column": 16
                              }
                            },
                            "name": "yMax"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 11714,
                            "end": 11724,
                            "loc": {
                              "start": {
                                "line": 310,
                                "column": 19
                              },
                              "end": {
                                "line": 310,
                                "column": 29
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 11714,
                              "end": 11718,
                              "loc": {
                                "start": {
                                  "line": 310,
                                  "column": 19
                                },
                                "end": {
                                  "line": 310,
                                  "column": 23
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11719,
                              "end": 11724,
                              "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": 11735,
                          "end": 11763,
                          "loc": {
                            "start": {
                              "line": 312,
                              "column": 8
                            },
                            "end": {
                              "line": 312,
                              "column": 36
                            }
                          },
                          "range": [
                            11735,
                            11763
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 11772,
                      "end": 11787,
                      "loc": {
                        "start": {
                          "line": 313,
                          "column": 8
                        },
                        "end": {
                          "line": 313,
                          "column": 23
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 11776,
                          "end": 11786,
                          "loc": {
                            "start": {
                              "line": 313,
                              "column": 12
                            },
                            "end": {
                              "line": 313,
                              "column": 22
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 11776,
                            "end": 11779,
                            "loc": {
                              "start": {
                                "line": 313,
                                "column": 12
                              },
                              "end": {
                                "line": 313,
                                "column": 15
                              }
                            },
                            "name": "eps",
                            "leadingComments": null
                          },
                          "init": {
                            "type": "Literal",
                            "start": 11782,
                            "end": 11786,
                            "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": 11735,
                          "end": 11763,
                          "loc": {
                            "start": {
                              "line": 312,
                              "column": 8
                            },
                            "end": {
                              "line": 312,
                              "column": 36
                            }
                          },
                          "range": [
                            11735,
                            11763
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 11796,
                      "end": 11863,
                      "loc": {
                        "start": {
                          "line": 314,
                          "column": 8
                        },
                        "end": {
                          "line": 314,
                          "column": 75
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 11796,
                        "end": 11862,
                        "loc": {
                          "start": {
                            "line": 314,
                            "column": 8
                          },
                          "end": {
                            "line": 314,
                            "column": 74
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 11796,
                          "end": 11815,
                          "loc": {
                            "start": {
                              "line": 314,
                              "column": 8
                            },
                            "end": {
                              "line": 314,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 11796,
                            "end": 11811,
                            "loc": {
                              "start": {
                                "line": 314,
                                "column": 8
                              },
                              "end": {
                                "line": 314,
                                "column": 23
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 11796,
                              "end": 11805,
                              "loc": {
                                "start": {
                                  "line": 314,
                                  "column": 8
                                },
                                "end": {
                                  "line": 314,
                                  "column": 17
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 11796,
                                "end": 11800,
                                "loc": {
                                  "start": {
                                    "line": 314,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 314,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 11801,
                                "end": 11805,
                                "loc": {
                                  "start": {
                                    "line": 314,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 314,
                                    "column": 17
                                  }
                                },
                                "name": "mesh"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11806,
                              "end": 11811,
                              "loc": {
                                "start": {
                                  "line": 314,
                                  "column": 18
                                },
                                "end": {
                                  "line": 314,
                                  "column": 23
                                }
                              },
                              "name": "scale"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11812,
                            "end": 11815,
                            "loc": {
                              "start": {
                                "line": 314,
                                "column": 24
                              },
                              "end": {
                                "line": 314,
                                "column": 27
                              }
                            },
                            "name": "set"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 11816,
                            "end": 11835,
                            "loc": {
                              "start": {
                                "line": 314,
                                "column": 28
                              },
                              "end": {
                                "line": 314,
                                "column": 47
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 11816,
                              "end": 11824,
                              "loc": {
                                "start": {
                                  "line": 314,
                                  "column": 28
                                },
                                "end": {
                                  "line": 314,
                                  "column": 36
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 11816,
                                "end": 11820,
                                "loc": {
                                  "start": {
                                    "line": 314,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 314,
                                    "column": 32
                                  }
                                },
                                "name": "Math"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 11821,
                                "end": 11824,
                                "loc": {
                                  "start": {
                                    "line": 314,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 314,
                                    "column": 36
                                  }
                                },
                                "name": "max"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 11825,
                                "end": 11829,
                                "loc": {
                                  "start": {
                                    "line": 314,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 314,
                                    "column": 41
                                  }
                                },
                                "name": "xMax"
                              },
                              {
                                "type": "Identifier",
                                "start": 11831,
                                "end": 11834,
                                "loc": {
                                  "start": {
                                    "line": 314,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 314,
                                    "column": 46
                                  }
                                },
                                "name": "eps"
                              }
                            ]
                          },
                          {
                            "type": "CallExpression",
                            "start": 11837,
                            "end": 11856,
                            "loc": {
                              "start": {
                                "line": 314,
                                "column": 49
                              },
                              "end": {
                                "line": 314,
                                "column": 68
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 11837,
                              "end": 11845,
                              "loc": {
                                "start": {
                                  "line": 314,
                                  "column": 49
                                },
                                "end": {
                                  "line": 314,
                                  "column": 57
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 11837,
                                "end": 11841,
                                "loc": {
                                  "start": {
                                    "line": 314,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 314,
                                    "column": 53
                                  }
                                },
                                "name": "Math"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 11842,
                                "end": 11845,
                                "loc": {
                                  "start": {
                                    "line": 314,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 314,
                                    "column": 57
                                  }
                                },
                                "name": "max"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 11846,
                                "end": 11850,
                                "loc": {
                                  "start": {
                                    "line": 314,
                                    "column": 58
                                  },
                                  "end": {
                                    "line": 314,
                                    "column": 62
                                  }
                                },
                                "name": "yMax"
                              },
                              {
                                "type": "Identifier",
                                "start": 11852,
                                "end": 11855,
                                "loc": {
                                  "start": {
                                    "line": 314,
                                    "column": 64
                                  },
                                  "end": {
                                    "line": 314,
                                    "column": 67
                                  }
                                },
                                "name": "eps"
                              }
                            ]
                          },
                          {
                            "type": "Identifier",
                            "start": 11858,
                            "end": 11861,
                            "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": 11873,
                          "end": 11946,
                          "loc": {
                            "start": {
                              "line": 316,
                              "column": 8
                            },
                            "end": {
                              "line": 316,
                              "column": 81
                            }
                          },
                          "range": [
                            11873,
                            11946
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 11955,
                      "end": 12038,
                      "loc": {
                        "start": {
                          "line": 317,
                          "column": 8
                        },
                        "end": {
                          "line": 317,
                          "column": 91
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 11959,
                          "end": 12037,
                          "loc": {
                            "start": {
                              "line": 317,
                              "column": 12
                            },
                            "end": {
                              "line": 317,
                              "column": 90
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 11959,
                            "end": 11962,
                            "loc": {
                              "start": {
                                "line": 317,
                                "column": 12
                              },
                              "end": {
                                "line": 317,
                                "column": 15
                              }
                            },
                            "name": "dir",
                            "leadingComments": null
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 11965,
                            "end": 12037,
                            "loc": {
                              "start": {
                                "line": 317,
                                "column": 18
                              },
                              "end": {
                                "line": 317,
                                "column": 90
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 11965,
                              "end": 12035,
                              "loc": {
                                "start": {
                                  "line": 317,
                                  "column": 18
                                },
                                "end": {
                                  "line": 317,
                                  "column": 88
                                }
                              },
                              "object": {
                                "type": "CallExpression",
                                "start": 11965,
                                "end": 12025,
                                "loc": {
                                  "start": {
                                    "line": 317,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 317,
                                    "column": 78
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 11965,
                                  "end": 12000,
                                  "loc": {
                                    "start": {
                                      "line": 317,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 317,
                                      "column": 53
                                    }
                                  },
                                  "object": {
                                    "type": "CallExpression",
                                    "start": 11965,
                                    "end": 11996,
                                    "loc": {
                                      "start": {
                                        "line": 317,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 317,
                                        "column": 49
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 11965,
                                      "end": 11994,
                                      "loc": {
                                        "start": {
                                          "line": 317,
                                          "column": 18
                                        },
                                        "end": {
                                          "line": 317,
                                          "column": 47
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 11965,
                                        "end": 11988,
                                        "loc": {
                                          "start": {
                                            "line": 317,
                                            "column": 18
                                          },
                                          "end": {
                                            "line": 317,
                                            "column": 41
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 11965,
                                          "end": 11979,
                                          "loc": {
                                            "start": {
                                              "line": 317,
                                              "column": 18
                                            },
                                            "end": {
                                              "line": 317,
                                              "column": 32
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 11965,
                                            "end": 11976,
                                            "loc": {
                                              "start": {
                                                "line": 317,
                                                "column": 18
                                              },
                                              "end": {
                                                "line": 317,
                                                "column": 29
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 11965,
                                              "end": 11969,
                                              "loc": {
                                                "start": {
                                                  "line": 317,
                                                  "column": 18
                                                },
                                                "end": {
                                                  "line": 317,
                                                  "column": 22
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 11970,
                                              "end": 11976,
                                              "loc": {
                                                "start": {
                                                  "line": 317,
                                                  "column": 23
                                                },
                                                "end": {
                                                  "line": 317,
                                                  "column": 29
                                                }
                                              },
                                              "name": "points"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Literal",
                                            "start": 11977,
                                            "end": 11978,
                                            "loc": {
                                              "start": {
                                                "line": 317,
                                                "column": 30
                                              },
                                              "end": {
                                                "line": 317,
                                                "column": 31
                                              }
                                            },
                                            "value": 1,
                                            "rawValue": 1,
                                            "raw": "1"
                                          },
                                          "computed": true
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 11980,
                                          "end": 11988,
                                          "loc": {
                                            "start": {
                                              "line": 317,
                                              "column": 33
                                            },
                                            "end": {
                                              "line": 317,
                                              "column": 41
                                            }
                                          },
                                          "name": "position"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 11989,
                                        "end": 11994,
                                        "loc": {
                                          "start": {
                                            "line": 317,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 317,
                                            "column": 47
                                          }
                                        },
                                        "name": "clone"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 11997,
                                    "end": 12000,
                                    "loc": {
                                      "start": {
                                        "line": 317,
                                        "column": 50
                                      },
                                      "end": {
                                        "line": 317,
                                        "column": 53
                                      }
                                    },
                                    "name": "sub"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "MemberExpression",
                                    "start": 12001,
                                    "end": 12024,
                                    "loc": {
                                      "start": {
                                        "line": 317,
                                        "column": 54
                                      },
                                      "end": {
                                        "line": 317,
                                        "column": 77
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 12001,
                                      "end": 12015,
                                      "loc": {
                                        "start": {
                                          "line": 317,
                                          "column": 54
                                        },
                                        "end": {
                                          "line": 317,
                                          "column": 68
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 12001,
                                        "end": 12012,
                                        "loc": {
                                          "start": {
                                            "line": 317,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 317,
                                            "column": 65
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 12001,
                                          "end": 12005,
                                          "loc": {
                                            "start": {
                                              "line": 317,
                                              "column": 54
                                            },
                                            "end": {
                                              "line": 317,
                                              "column": 58
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 12006,
                                          "end": 12012,
                                          "loc": {
                                            "start": {
                                              "line": 317,
                                              "column": 59
                                            },
                                            "end": {
                                              "line": 317,
                                              "column": 65
                                            }
                                          },
                                          "name": "points"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Literal",
                                        "start": 12013,
                                        "end": 12014,
                                        "loc": {
                                          "start": {
                                            "line": 317,
                                            "column": 66
                                          },
                                          "end": {
                                            "line": 317,
                                            "column": 67
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      "computed": true
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 12016,
                                      "end": 12024,
                                      "loc": {
                                        "start": {
                                          "line": 317,
                                          "column": 69
                                        },
                                        "end": {
                                          "line": 317,
                                          "column": 77
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  }
                                ]
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 12026,
                                "end": 12035,
                                "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": 11873,
                          "end": 11946,
                          "loc": {
                            "start": {
                              "line": 316,
                              "column": 8
                            },
                            "end": {
                              "line": 316,
                              "column": 81
                            }
                          },
                          "range": [
                            11873,
                            11946
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 12047,
                      "end": 12130,
                      "loc": {
                        "start": {
                          "line": 318,
                          "column": 8
                        },
                        "end": {
                          "line": 318,
                          "column": 91
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 12051,
                          "end": 12129,
                          "loc": {
                            "start": {
                              "line": 318,
                              "column": 12
                            },
                            "end": {
                              "line": 318,
                              "column": 90
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 12051,
                            "end": 12052,
                            "loc": {
                              "start": {
                                "line": 318,
                                "column": 12
                              },
                              "end": {
                                "line": 318,
                                "column": 13
                              }
                            },
                            "name": "q"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 12055,
                            "end": 12129,
                            "loc": {
                              "start": {
                                "line": 318,
                                "column": 16
                              },
                              "end": {
                                "line": 318,
                                "column": 90
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 12055,
                              "end": 12096,
                              "loc": {
                                "start": {
                                  "line": 318,
                                  "column": 16
                                },
                                "end": {
                                  "line": 318,
                                  "column": 57
                                }
                              },
                              "object": {
                                "type": "NewExpression",
                                "start": 12055,
                                "end": 12077,
                                "loc": {
                                  "start": {
                                    "line": 318,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 318,
                                    "column": 38
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 12059,
                                  "end": 12075,
                                  "loc": {
                                    "start": {
                                      "line": 318,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 318,
                                      "column": 36
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 12059,
                                    "end": 12064,
                                    "loc": {
                                      "start": {
                                        "line": 318,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 318,
                                        "column": 25
                                      }
                                    },
                                    "name": "THREE"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 12065,
                                    "end": 12075,
                                    "loc": {
                                      "start": {
                                        "line": 318,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 318,
                                        "column": 36
                                      }
                                    },
                                    "name": "Quaternion"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 12078,
                                "end": 12096,
                                "loc": {
                                  "start": {
                                    "line": 318,
                                    "column": 39
                                  },
                                  "end": {
                                    "line": 318,
                                    "column": 57
                                  }
                                },
                                "name": "setFromUnitVectors"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "NewExpression",
                                "start": 12097,
                                "end": 12123,
                                "loc": {
                                  "start": {
                                    "line": 318,
                                    "column": 58
                                  },
                                  "end": {
                                    "line": 318,
                                    "column": 84
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 12101,
                                  "end": 12114,
                                  "loc": {
                                    "start": {
                                      "line": 318,
                                      "column": 62
                                    },
                                    "end": {
                                      "line": 318,
                                      "column": 75
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 12101,
                                    "end": 12106,
                                    "loc": {
                                      "start": {
                                        "line": 318,
                                        "column": 62
                                      },
                                      "end": {
                                        "line": 318,
                                        "column": 67
                                      }
                                    },
                                    "name": "THREE"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 12107,
                                    "end": 12114,
                                    "loc": {
                                      "start": {
                                        "line": 318,
                                        "column": 68
                                      },
                                      "end": {
                                        "line": 318,
                                        "column": 75
                                      }
                                    },
                                    "name": "Vector3"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Literal",
                                    "start": 12115,
                                    "end": 12116,
                                    "loc": {
                                      "start": {
                                        "line": 318,
                                        "column": 76
                                      },
                                      "end": {
                                        "line": 318,
                                        "column": 77
                                      }
                                    },
                                    "value": 1,
                                    "rawValue": 1,
                                    "raw": "1"
                                  },
                                  {
                                    "type": "Literal",
                                    "start": 12118,
                                    "end": 12119,
                                    "loc": {
                                      "start": {
                                        "line": 318,
                                        "column": 79
                                      },
                                      "end": {
                                        "line": 318,
                                        "column": 80
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  {
                                    "type": "Literal",
                                    "start": 12121,
                                    "end": 12122,
                                    "loc": {
                                      "start": {
                                        "line": 318,
                                        "column": 82
                                      },
                                      "end": {
                                        "line": 318,
                                        "column": 83
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  }
                                ]
                              },
                              {
                                "type": "Identifier",
                                "start": 12125,
                                "end": 12128,
                                "loc": {
                                  "start": {
                                    "line": 318,
                                    "column": 86
                                  },
                                  "end": {
                                    "line": 318,
                                    "column": 89
                                  }
                                },
                                "name": "dir"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 12139,
                      "end": 12168,
                      "loc": {
                        "start": {
                          "line": 319,
                          "column": 8
                        },
                        "end": {
                          "line": 319,
                          "column": 37
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 12139,
                        "end": 12167,
                        "loc": {
                          "start": {
                            "line": 319,
                            "column": 8
                          },
                          "end": {
                            "line": 319,
                            "column": 36
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 12139,
                          "end": 12164,
                          "loc": {
                            "start": {
                              "line": 319,
                              "column": 8
                            },
                            "end": {
                              "line": 319,
                              "column": 33
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 12139,
                            "end": 12159,
                            "loc": {
                              "start": {
                                "line": 319,
                                "column": 8
                              },
                              "end": {
                                "line": 319,
                                "column": 28
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 12139,
                              "end": 12148,
                              "loc": {
                                "start": {
                                  "line": 319,
                                  "column": 8
                                },
                                "end": {
                                  "line": 319,
                                  "column": 17
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 12139,
                                "end": 12143,
                                "loc": {
                                  "start": {
                                    "line": 319,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 319,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 12144,
                                "end": 12148,
                                "loc": {
                                  "start": {
                                    "line": 319,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 319,
                                    "column": 17
                                  }
                                },
                                "name": "mesh"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 12149,
                              "end": 12159,
                              "loc": {
                                "start": {
                                  "line": 319,
                                  "column": 18
                                },
                                "end": {
                                  "line": 319,
                                  "column": 28
                                }
                              },
                              "name": "quaternion"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12160,
                            "end": 12164,
                            "loc": {
                              "start": {
                                "line": 319,
                                "column": 29
                              },
                              "end": {
                                "line": 319,
                                "column": 33
                              }
                            },
                            "name": "copy"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 12165,
                            "end": 12166,
                            "loc": {
                              "start": {
                                "line": 319,
                                "column": 34
                              },
                              "end": {
                                "line": 319,
                                "column": 35
                              }
                            },
                            "name": "q"
                          }
                        ]
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " set position of segment's center",
                          "start": 12178,
                          "end": 12213,
                          "loc": {
                            "start": {
                              "line": 321,
                              "column": 8
                            },
                            "end": {
                              "line": 321,
                              "column": 43
                            }
                          },
                          "range": [
                            12178,
                            12213
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 12222,
                      "end": 12272,
                      "loc": {
                        "start": {
                          "line": 322,
                          "column": 8
                        },
                        "end": {
                          "line": 322,
                          "column": 58
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 12222,
                        "end": 12271,
                        "loc": {
                          "start": {
                            "line": 322,
                            "column": 8
                          },
                          "end": {
                            "line": 322,
                            "column": 57
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 12222,
                          "end": 12245,
                          "loc": {
                            "start": {
                              "line": 322,
                              "column": 8
                            },
                            "end": {
                              "line": 322,
                              "column": 31
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 12222,
                            "end": 12240,
                            "loc": {
                              "start": {
                                "line": 322,
                                "column": 8
                              },
                              "end": {
                                "line": 322,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 12222,
                              "end": 12231,
                              "loc": {
                                "start": {
                                  "line": 322,
                                  "column": 8
                                },
                                "end": {
                                  "line": 322,
                                  "column": 17
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 12222,
                                "end": 12226,
                                "loc": {
                                  "start": {
                                    "line": 322,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 322,
                                    "column": 12
                                  }
                                },
                                "leadingComments": null
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 12227,
                                "end": 12231,
                                "loc": {
                                  "start": {
                                    "line": 322,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 322,
                                    "column": 17
                                  }
                                },
                                "name": "mesh"
                              },
                              "computed": false,
                              "leadingComments": null
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 12232,
                              "end": 12240,
                              "loc": {
                                "start": {
                                  "line": 322,
                                  "column": 18
                                },
                                "end": {
                                  "line": 322,
                                  "column": 26
                                }
                              },
                              "name": "position"
                            },
                            "computed": false,
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12241,
                            "end": 12245,
                            "loc": {
                              "start": {
                                "line": 322,
                                "column": 27
                              },
                              "end": {
                                "line": 322,
                                "column": 31
                              }
                            },
                            "name": "copy"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 12246,
                            "end": 12270,
                            "loc": {
                              "start": {
                                "line": 322,
                                "column": 32
                              },
                              "end": {
                                "line": 322,
                                "column": 56
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 12246,
                              "end": 12268,
                              "loc": {
                                "start": {
                                  "line": 322,
                                  "column": 32
                                },
                                "end": {
                                  "line": 322,
                                  "column": 54
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 12246,
                                "end": 12250,
                                "loc": {
                                  "start": {
                                    "line": 322,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 322,
                                    "column": 36
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 12251,
                                "end": 12268,
                                "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": 12178,
                          "end": 12213,
                          "loc": {
                            "start": {
                              "line": 321,
                              "column": 8
                            },
                            "end": {
                              "line": 321,
                              "column": 43
                            }
                          },
                          "range": [
                            12178,
                            12213
                          ]
                        }
                      ]
                    },
                    {
                      "type": "IfStatement",
                      "start": 12281,
                      "end": 12344,
                      "loc": {
                        "start": {
                          "line": 323,
                          "column": 8
                        },
                        "end": {
                          "line": 323,
                          "column": 71
                        }
                      },
                      "test": {
                        "type": "MemberExpression",
                        "start": 12285,
                        "end": 12311,
                        "loc": {
                          "start": {
                            "line": 323,
                            "column": 12
                          },
                          "end": {
                            "line": 323,
                            "column": 38
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 12285,
                          "end": 12289,
                          "loc": {
                            "start": {
                              "line": 323,
                              "column": 12
                            },
                            "end": {
                              "line": 323,
                              "column": 16
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 12290,
                          "end": 12311,
                          "loc": {
                            "start": {
                              "line": 323,
                              "column": 17
                            },
                            "end": {
                              "line": 323,
                              "column": 38
                            }
                          },
                          "name": "auxiliaryConstruction"
                        },
                        "computed": false
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 12313,
                        "end": 12344,
                        "loc": {
                          "start": {
                            "line": 323,
                            "column": 40
                          },
                          "end": {
                            "line": 323,
                            "column": 71
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 12313,
                          "end": 12343,
                          "loc": {
                            "start": {
                              "line": 323,
                              "column": 40
                            },
                            "end": {
                              "line": 323,
                              "column": 70
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 12313,
                            "end": 12341,
                            "loc": {
                              "start": {
                                "line": 323,
                                "column": 40
                              },
                              "end": {
                                "line": 323,
                                "column": 68
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 12313,
                              "end": 12317,
                              "loc": {
                                "start": {
                                  "line": 323,
                                  "column": 40
                                },
                                "end": {
                                  "line": 323,
                                  "column": 44
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 12318,
                              "end": 12341,
                              "loc": {
                                "start": {
                                  "line": 323,
                                  "column": 45
                                },
                                "end": {
                                  "line": 323,
                                  "column": 68
                                }
                              },
                              "name": "updateAuxiliaryGeometry"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      },
                      "alternate": null
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 12356,
              "end": 12484,
              "loc": {
                "start": {
                  "line": 326,
                  "column": 4
                },
                "end": {
                  "line": 328,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 12356,
                "end": 12364,
                "loc": {
                  "start": {
                    "line": 326,
                    "column": 4
                  },
                  "end": {
                    "line": 326,
                    "column": 12
                  }
                },
                "name": "getState"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 12364,
                "end": 12484,
                "loc": {
                  "start": {
                    "line": 326,
                    "column": 12
                  },
                  "end": {
                    "line": 328,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 12367,
                  "end": 12484,
                  "loc": {
                    "start": {
                      "line": 326,
                      "column": 15
                    },
                    "end": {
                      "line": 328,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 12377,
                      "end": 12478,
                      "loc": {
                        "start": {
                          "line": 327,
                          "column": 8
                        },
                        "end": {
                          "line": 327,
                          "column": 109
                        }
                      },
                      "argument": {
                        "type": "NewExpression",
                        "start": 12384,
                        "end": 12477,
                        "loc": {
                          "start": {
                            "line": 327,
                            "column": 15
                          },
                          "end": {
                            "line": 327,
                            "column": 108
                          }
                        },
                        "callee": {
                          "type": "Identifier",
                          "start": 12388,
                          "end": 12391,
                          "loc": {
                            "start": {
                              "line": 327,
                              "column": 19
                            },
                            "end": {
                              "line": 327,
                              "column": 22
                            }
                          },
                          "name": "Map"
                        },
                        "arguments": [
                          {
                            "type": "ArrayExpression",
                            "start": 12392,
                            "end": 12476,
                            "loc": {
                              "start": {
                                "line": 327,
                                "column": 23
                              },
                              "end": {
                                "line": 327,
                                "column": 107
                              }
                            },
                            "elements": [
                              {
                                "type": "ArrayExpression",
                                "start": 12393,
                                "end": 12434,
                                "loc": {
                                  "start": {
                                    "line": 327,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 327,
                                    "column": 65
                                  }
                                },
                                "elements": [
                                  {
                                    "type": "Literal",
                                    "start": 12394,
                                    "end": 12406,
                                    "loc": {
                                      "start": {
                                        "line": 327,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 327,
                                        "column": 37
                                      }
                                    },
                                    "value": "startPoint",
                                    "rawValue": "startPoint",
                                    "raw": "'startPoint'"
                                  },
                                  {
                                    "type": "CallExpression",
                                    "start": 12408,
                                    "end": 12433,
                                    "loc": {
                                      "start": {
                                        "line": 327,
                                        "column": 39
                                      },
                                      "end": {
                                        "line": 327,
                                        "column": 64
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 12408,
                                      "end": 12431,
                                      "loc": {
                                        "start": {
                                          "line": 327,
                                          "column": 39
                                        },
                                        "end": {
                                          "line": 327,
                                          "column": 62
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 12408,
                                        "end": 12422,
                                        "loc": {
                                          "start": {
                                            "line": 327,
                                            "column": 39
                                          },
                                          "end": {
                                            "line": 327,
                                            "column": 53
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 12408,
                                          "end": 12419,
                                          "loc": {
                                            "start": {
                                              "line": 327,
                                              "column": 39
                                            },
                                            "end": {
                                              "line": 327,
                                              "column": 50
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 12408,
                                            "end": 12412,
                                            "loc": {
                                              "start": {
                                                "line": 327,
                                                "column": 39
                                              },
                                              "end": {
                                                "line": 327,
                                                "column": 43
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 12413,
                                            "end": 12419,
                                            "loc": {
                                              "start": {
                                                "line": 327,
                                                "column": 44
                                              },
                                              "end": {
                                                "line": 327,
                                                "column": 50
                                              }
                                            },
                                            "name": "points"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Literal",
                                          "start": 12420,
                                          "end": 12421,
                                          "loc": {
                                            "start": {
                                              "line": 327,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 327,
                                              "column": 52
                                            }
                                          },
                                          "value": 0,
                                          "rawValue": 0,
                                          "raw": "0"
                                        },
                                        "computed": true
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 12423,
                                        "end": 12431,
                                        "loc": {
                                          "start": {
                                            "line": 327,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 327,
                                            "column": 62
                                          }
                                        },
                                        "name": "getState"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                ]
                              },
                              {
                                "type": "ArrayExpression",
                                "start": 12436,
                                "end": 12475,
                                "loc": {
                                  "start": {
                                    "line": 327,
                                    "column": 67
                                  },
                                  "end": {
                                    "line": 327,
                                    "column": 106
                                  }
                                },
                                "elements": [
                                  {
                                    "type": "Literal",
                                    "start": 12437,
                                    "end": 12447,
                                    "loc": {
                                      "start": {
                                        "line": 327,
                                        "column": 68
                                      },
                                      "end": {
                                        "line": 327,
                                        "column": 78
                                      }
                                    },
                                    "value": "endPoint",
                                    "rawValue": "endPoint",
                                    "raw": "'endPoint'"
                                  },
                                  {
                                    "type": "CallExpression",
                                    "start": 12449,
                                    "end": 12474,
                                    "loc": {
                                      "start": {
                                        "line": 327,
                                        "column": 80
                                      },
                                      "end": {
                                        "line": 327,
                                        "column": 105
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 12449,
                                      "end": 12472,
                                      "loc": {
                                        "start": {
                                          "line": 327,
                                          "column": 80
                                        },
                                        "end": {
                                          "line": 327,
                                          "column": 103
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 12449,
                                        "end": 12463,
                                        "loc": {
                                          "start": {
                                            "line": 327,
                                            "column": 80
                                          },
                                          "end": {
                                            "line": 327,
                                            "column": 94
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 12449,
                                          "end": 12460,
                                          "loc": {
                                            "start": {
                                              "line": 327,
                                              "column": 80
                                            },
                                            "end": {
                                              "line": 327,
                                              "column": 91
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 12449,
                                            "end": 12453,
                                            "loc": {
                                              "start": {
                                                "line": 327,
                                                "column": 80
                                              },
                                              "end": {
                                                "line": 327,
                                                "column": 84
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 12454,
                                            "end": 12460,
                                            "loc": {
                                              "start": {
                                                "line": 327,
                                                "column": 85
                                              },
                                              "end": {
                                                "line": 327,
                                                "column": 91
                                              }
                                            },
                                            "name": "points"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Literal",
                                          "start": 12461,
                                          "end": 12462,
                                          "loc": {
                                            "start": {
                                              "line": 327,
                                              "column": 92
                                            },
                                            "end": {
                                              "line": 327,
                                              "column": 93
                                            }
                                          },
                                          "value": 1,
                                          "rawValue": 1,
                                          "raw": "1"
                                        },
                                        "computed": true
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 12464,
                                        "end": 12472,
                                        "loc": {
                                          "start": {
                                            "line": 327,
                                            "column": 95
                                          },
                                          "end": {
                                            "line": 327,
                                            "column": 103
                                          }
                                        },
                                        "name": "getState"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                ]
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 12490,
              "end": 12745,
              "loc": {
                "start": {
                  "line": 330,
                  "column": 4
                },
                "end": {
                  "line": 335,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 12490,
                "end": 12504,
                "loc": {
                  "start": {
                    "line": 330,
                    "column": 4
                  },
                  "end": {
                    "line": 330,
                    "column": 18
                  }
                },
                "name": "applyStateDiff"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 12504,
                "end": 12745,
                "loc": {
                  "start": {
                    "line": 330,
                    "column": 18
                  },
                  "end": {
                    "line": 335,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 12505,
                    "end": 12514,
                    "loc": {
                      "start": {
                        "line": 330,
                        "column": 19
                      },
                      "end": {
                        "line": 330,
                        "column": 28
                      }
                    },
                    "name": "stateDiff"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 12516,
                  "end": 12745,
                  "loc": {
                    "start": {
                      "line": 330,
                      "column": 30
                    },
                    "end": {
                      "line": 335,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 12526,
                      "end": 12630,
                      "loc": {
                        "start": {
                          "line": 331,
                          "column": 8
                        },
                        "end": {
                          "line": 332,
                          "column": 71
                        }
                      },
                      "test": {
                        "type": "CallExpression",
                        "start": 12530,
                        "end": 12557,
                        "loc": {
                          "start": {
                            "line": 331,
                            "column": 12
                          },
                          "end": {
                            "line": 331,
                            "column": 39
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 12530,
                          "end": 12543,
                          "loc": {
                            "start": {
                              "line": 331,
                              "column": 12
                            },
                            "end": {
                              "line": 331,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 12530,
                            "end": 12539,
                            "loc": {
                              "start": {
                                "line": 331,
                                "column": 12
                              },
                              "end": {
                                "line": 331,
                                "column": 21
                              }
                            },
                            "name": "stateDiff"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12540,
                            "end": 12543,
                            "loc": {
                              "start": {
                                "line": 331,
                                "column": 22
                              },
                              "end": {
                                "line": 331,
                                "column": 25
                              }
                            },
                            "name": "has"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 12544,
                            "end": 12556,
                            "loc": {
                              "start": {
                                "line": 331,
                                "column": 26
                              },
                              "end": {
                                "line": 331,
                                "column": 38
                              }
                            },
                            "value": "startPoint",
                            "rawValue": "startPoint",
                            "raw": "'startPoint'"
                          }
                        ]
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 12571,
                        "end": 12630,
                        "loc": {
                          "start": {
                            "line": 332,
                            "column": 12
                          },
                          "end": {
                            "line": 332,
                            "column": 71
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 12571,
                          "end": 12629,
                          "loc": {
                            "start": {
                              "line": 332,
                              "column": 12
                            },
                            "end": {
                              "line": 332,
                              "column": 70
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 12571,
                            "end": 12600,
                            "loc": {
                              "start": {
                                "line": 332,
                                "column": 12
                              },
                              "end": {
                                "line": 332,
                                "column": 41
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 12571,
                              "end": 12585,
                              "loc": {
                                "start": {
                                  "line": 332,
                                  "column": 12
                                },
                                "end": {
                                  "line": 332,
                                  "column": 26
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 12571,
                                "end": 12582,
                                "loc": {
                                  "start": {
                                    "line": 332,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 332,
                                    "column": 23
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 12571,
                                  "end": 12575,
                                  "loc": {
                                    "start": {
                                      "line": 332,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 332,
                                      "column": 16
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 12576,
                                  "end": 12582,
                                  "loc": {
                                    "start": {
                                      "line": 332,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 332,
                                      "column": 23
                                    }
                                  },
                                  "name": "points"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Literal",
                                "start": 12583,
                                "end": 12584,
                                "loc": {
                                  "start": {
                                    "line": 332,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 332,
                                    "column": 25
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0"
                              },
                              "computed": true
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 12586,
                              "end": 12600,
                              "loc": {
                                "start": {
                                  "line": 332,
                                  "column": 27
                                },
                                "end": {
                                  "line": 332,
                                  "column": 41
                                }
                              },
                              "name": "applyStateDiff"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "CallExpression",
                              "start": 12601,
                              "end": 12628,
                              "loc": {
                                "start": {
                                  "line": 332,
                                  "column": 42
                                },
                                "end": {
                                  "line": 332,
                                  "column": 69
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 12601,
                                "end": 12614,
                                "loc": {
                                  "start": {
                                    "line": 332,
                                    "column": 42
                                  },
                                  "end": {
                                    "line": 332,
                                    "column": 55
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 12601,
                                  "end": 12610,
                                  "loc": {
                                    "start": {
                                      "line": 332,
                                      "column": 42
                                    },
                                    "end": {
                                      "line": 332,
                                      "column": 51
                                    }
                                  },
                                  "name": "stateDiff"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 12611,
                                  "end": 12614,
                                  "loc": {
                                    "start": {
                                      "line": 332,
                                      "column": 52
                                    },
                                    "end": {
                                      "line": 332,
                                      "column": 55
                                    }
                                  },
                                  "name": "get"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 12615,
                                  "end": 12627,
                                  "loc": {
                                    "start": {
                                      "line": 332,
                                      "column": 56
                                    },
                                    "end": {
                                      "line": 332,
                                      "column": 68
                                    }
                                  },
                                  "value": "startPoint",
                                  "rawValue": "startPoint",
                                  "raw": "'startPoint'"
                                }
                              ]
                            }
                          ]
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 12639,
                      "end": 12739,
                      "loc": {
                        "start": {
                          "line": 333,
                          "column": 8
                        },
                        "end": {
                          "line": 334,
                          "column": 69
                        }
                      },
                      "test": {
                        "type": "CallExpression",
                        "start": 12643,
                        "end": 12668,
                        "loc": {
                          "start": {
                            "line": 333,
                            "column": 12
                          },
                          "end": {
                            "line": 333,
                            "column": 37
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 12643,
                          "end": 12656,
                          "loc": {
                            "start": {
                              "line": 333,
                              "column": 12
                            },
                            "end": {
                              "line": 333,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 12643,
                            "end": 12652,
                            "loc": {
                              "start": {
                                "line": 333,
                                "column": 12
                              },
                              "end": {
                                "line": 333,
                                "column": 21
                              }
                            },
                            "name": "stateDiff"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12653,
                            "end": 12656,
                            "loc": {
                              "start": {
                                "line": 333,
                                "column": 22
                              },
                              "end": {
                                "line": 333,
                                "column": 25
                              }
                            },
                            "name": "has"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 12657,
                            "end": 12667,
                            "loc": {
                              "start": {
                                "line": 333,
                                "column": 26
                              },
                              "end": {
                                "line": 333,
                                "column": 36
                              }
                            },
                            "value": "endPoint",
                            "rawValue": "endPoint",
                            "raw": "'endPoint'"
                          }
                        ]
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 12682,
                        "end": 12739,
                        "loc": {
                          "start": {
                            "line": 334,
                            "column": 12
                          },
                          "end": {
                            "line": 334,
                            "column": 69
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 12682,
                          "end": 12738,
                          "loc": {
                            "start": {
                              "line": 334,
                              "column": 12
                            },
                            "end": {
                              "line": 334,
                              "column": 68
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 12682,
                            "end": 12711,
                            "loc": {
                              "start": {
                                "line": 334,
                                "column": 12
                              },
                              "end": {
                                "line": 334,
                                "column": 41
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 12682,
                              "end": 12696,
                              "loc": {
                                "start": {
                                  "line": 334,
                                  "column": 12
                                },
                                "end": {
                                  "line": 334,
                                  "column": 26
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 12682,
                                "end": 12693,
                                "loc": {
                                  "start": {
                                    "line": 334,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 334,
                                    "column": 23
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 12682,
                                  "end": 12686,
                                  "loc": {
                                    "start": {
                                      "line": 334,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 334,
                                      "column": 16
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 12687,
                                  "end": 12693,
                                  "loc": {
                                    "start": {
                                      "line": 334,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 334,
                                      "column": 23
                                    }
                                  },
                                  "name": "points"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Literal",
                                "start": 12694,
                                "end": 12695,
                                "loc": {
                                  "start": {
                                    "line": 334,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 334,
                                    "column": 25
                                  }
                                },
                                "value": 1,
                                "rawValue": 1,
                                "raw": "1"
                              },
                              "computed": true
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 12697,
                              "end": 12711,
                              "loc": {
                                "start": {
                                  "line": 334,
                                  "column": 27
                                },
                                "end": {
                                  "line": 334,
                                  "column": 41
                                }
                              },
                              "name": "applyStateDiff"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "CallExpression",
                              "start": 12712,
                              "end": 12737,
                              "loc": {
                                "start": {
                                  "line": 334,
                                  "column": 42
                                },
                                "end": {
                                  "line": 334,
                                  "column": 67
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 12712,
                                "end": 12725,
                                "loc": {
                                  "start": {
                                    "line": 334,
                                    "column": 42
                                  },
                                  "end": {
                                    "line": 334,
                                    "column": 55
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 12712,
                                  "end": 12721,
                                  "loc": {
                                    "start": {
                                      "line": 334,
                                      "column": 42
                                    },
                                    "end": {
                                      "line": 334,
                                      "column": 51
                                    }
                                  },
                                  "name": "stateDiff"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 12722,
                                  "end": 12725,
                                  "loc": {
                                    "start": {
                                      "line": 334,
                                      "column": 52
                                    },
                                    "end": {
                                      "line": 334,
                                      "column": 55
                                    }
                                  },
                                  "name": "get"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 12726,
                                  "end": 12736,
                                  "loc": {
                                    "start": {
                                      "line": 334,
                                      "column": 56
                                    },
                                    "end": {
                                      "line": 334,
                                      "column": 66
                                    }
                                  },
                                  "value": "endPoint",
                                  "rawValue": "endPoint",
                                  "raw": "'endPoint'"
                                }
                              ]
                            }
                          ]
                        }
                      },
                      "alternate": null
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 12751,
              "end": 13062,
              "loc": {
                "start": {
                  "line": 337,
                  "column": 4
                },
                "end": {
                  "line": 344,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 12751,
                "end": 12763,
                "loc": {
                  "start": {
                    "line": 337,
                    "column": 4
                  },
                  "end": {
                    "line": 337,
                    "column": 16
                  }
                },
                "name": "addStateDiff"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 12763,
                "end": 13062,
                "loc": {
                  "start": {
                    "line": 337,
                    "column": 16
                  },
                  "end": {
                    "line": 344,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 12764,
                    "end": 12773,
                    "loc": {
                      "start": {
                        "line": 337,
                        "column": 17
                      },
                      "end": {
                        "line": 337,
                        "column": 26
                      }
                    },
                    "name": "stateDiff"
                  },
                  {
                    "type": "Identifier",
                    "start": 12775,
                    "end": 12780,
                    "loc": {
                      "start": {
                        "line": 337,
                        "column": 28
                      },
                      "end": {
                        "line": 337,
                        "column": 33
                      }
                    },
                    "name": "alpha"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 12782,
                  "end": 13062,
                  "loc": {
                    "start": {
                      "line": 337,
                      "column": 35
                    },
                    "end": {
                      "line": 344,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 12792,
                      "end": 12823,
                      "loc": {
                        "start": {
                          "line": 338,
                          "column": 8
                        },
                        "end": {
                          "line": 338,
                          "column": 39
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 12796,
                        "end": 12814,
                        "loc": {
                          "start": {
                            "line": 338,
                            "column": 12
                          },
                          "end": {
                            "line": 338,
                            "column": 30
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 12796,
                          "end": 12805,
                          "loc": {
                            "start": {
                              "line": 338,
                              "column": 12
                            },
                            "end": {
                              "line": 338,
                              "column": 21
                            }
                          },
                          "name": "stateDiff"
                        },
                        "operator": "===",
                        "right": {
                          "type": "Literal",
                          "start": 12810,
                          "end": 12814,
                          "loc": {
                            "start": {
                              "line": 338,
                              "column": 26
                            },
                            "end": {
                              "line": 338,
                              "column": 30
                            }
                          },
                          "value": null,
                          "rawValue": null,
                          "raw": "null"
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 12816,
                        "end": 12823,
                        "loc": {
                          "start": {
                            "line": 338,
                            "column": 32
                          },
                          "end": {
                            "line": 338,
                            "column": 39
                          }
                        },
                        "argument": null
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 12833,
                      "end": 12942,
                      "loc": {
                        "start": {
                          "line": 340,
                          "column": 8
                        },
                        "end": {
                          "line": 341,
                          "column": 76
                        }
                      },
                      "test": {
                        "type": "CallExpression",
                        "start": 12837,
                        "end": 12864,
                        "loc": {
                          "start": {
                            "line": 340,
                            "column": 12
                          },
                          "end": {
                            "line": 340,
                            "column": 39
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 12837,
                          "end": 12850,
                          "loc": {
                            "start": {
                              "line": 340,
                              "column": 12
                            },
                            "end": {
                              "line": 340,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 12837,
                            "end": 12846,
                            "loc": {
                              "start": {
                                "line": 340,
                                "column": 12
                              },
                              "end": {
                                "line": 340,
                                "column": 21
                              }
                            },
                            "name": "stateDiff"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12847,
                            "end": 12850,
                            "loc": {
                              "start": {
                                "line": 340,
                                "column": 22
                              },
                              "end": {
                                "line": 340,
                                "column": 25
                              }
                            },
                            "name": "has"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 12851,
                            "end": 12863,
                            "loc": {
                              "start": {
                                "line": 340,
                                "column": 26
                              },
                              "end": {
                                "line": 340,
                                "column": 38
                              }
                            },
                            "value": "startPoint",
                            "rawValue": "startPoint",
                            "raw": "'startPoint'"
                          }
                        ]
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 12878,
                        "end": 12942,
                        "loc": {
                          "start": {
                            "line": 341,
                            "column": 12
                          },
                          "end": {
                            "line": 341,
                            "column": 76
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 12878,
                          "end": 12941,
                          "loc": {
                            "start": {
                              "line": 341,
                              "column": 12
                            },
                            "end": {
                              "line": 341,
                              "column": 75
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 12878,
                            "end": 12905,
                            "loc": {
                              "start": {
                                "line": 341,
                                "column": 12
                              },
                              "end": {
                                "line": 341,
                                "column": 39
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 12878,
                              "end": 12892,
                              "loc": {
                                "start": {
                                  "line": 341,
                                  "column": 12
                                },
                                "end": {
                                  "line": 341,
                                  "column": 26
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 12878,
                                "end": 12889,
                                "loc": {
                                  "start": {
                                    "line": 341,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 341,
                                    "column": 23
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 12878,
                                  "end": 12882,
                                  "loc": {
                                    "start": {
                                      "line": 341,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 341,
                                      "column": 16
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 12883,
                                  "end": 12889,
                                  "loc": {
                                    "start": {
                                      "line": 341,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 341,
                                      "column": 23
                                    }
                                  },
                                  "name": "points"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Literal",
                                "start": 12890,
                                "end": 12891,
                                "loc": {
                                  "start": {
                                    "line": 341,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 341,
                                    "column": 25
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0"
                              },
                              "computed": true
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 12893,
                              "end": 12905,
                              "loc": {
                                "start": {
                                  "line": 341,
                                  "column": 27
                                },
                                "end": {
                                  "line": 341,
                                  "column": 39
                                }
                              },
                              "name": "addStateDiff"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "CallExpression",
                              "start": 12906,
                              "end": 12933,
                              "loc": {
                                "start": {
                                  "line": 341,
                                  "column": 40
                                },
                                "end": {
                                  "line": 341,
                                  "column": 67
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 12906,
                                "end": 12919,
                                "loc": {
                                  "start": {
                                    "line": 341,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 341,
                                    "column": 53
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 12906,
                                  "end": 12915,
                                  "loc": {
                                    "start": {
                                      "line": 341,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 341,
                                      "column": 49
                                    }
                                  },
                                  "name": "stateDiff"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 12916,
                                  "end": 12919,
                                  "loc": {
                                    "start": {
                                      "line": 341,
                                      "column": 50
                                    },
                                    "end": {
                                      "line": 341,
                                      "column": 53
                                    }
                                  },
                                  "name": "get"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 12920,
                                  "end": 12932,
                                  "loc": {
                                    "start": {
                                      "line": 341,
                                      "column": 54
                                    },
                                    "end": {
                                      "line": 341,
                                      "column": 66
                                    }
                                  },
                                  "value": "startPoint",
                                  "rawValue": "startPoint",
                                  "raw": "'startPoint'"
                                }
                              ]
                            },
                            {
                              "type": "Identifier",
                              "start": 12935,
                              "end": 12940,
                              "loc": {
                                "start": {
                                  "line": 341,
                                  "column": 69
                                },
                                "end": {
                                  "line": 341,
                                  "column": 74
                                }
                              },
                              "name": "alpha"
                            }
                          ]
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 12951,
                      "end": 13056,
                      "loc": {
                        "start": {
                          "line": 342,
                          "column": 8
                        },
                        "end": {
                          "line": 343,
                          "column": 74
                        }
                      },
                      "test": {
                        "type": "CallExpression",
                        "start": 12955,
                        "end": 12980,
                        "loc": {
                          "start": {
                            "line": 342,
                            "column": 12
                          },
                          "end": {
                            "line": 342,
                            "column": 37
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 12955,
                          "end": 12968,
                          "loc": {
                            "start": {
                              "line": 342,
                              "column": 12
                            },
                            "end": {
                              "line": 342,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 12955,
                            "end": 12964,
                            "loc": {
                              "start": {
                                "line": 342,
                                "column": 12
                              },
                              "end": {
                                "line": 342,
                                "column": 21
                              }
                            },
                            "name": "stateDiff"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12965,
                            "end": 12968,
                            "loc": {
                              "start": {
                                "line": 342,
                                "column": 22
                              },
                              "end": {
                                "line": 342,
                                "column": 25
                              }
                            },
                            "name": "has"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 12969,
                            "end": 12979,
                            "loc": {
                              "start": {
                                "line": 342,
                                "column": 26
                              },
                              "end": {
                                "line": 342,
                                "column": 36
                              }
                            },
                            "value": "endPoint",
                            "rawValue": "endPoint",
                            "raw": "'endPoint'"
                          }
                        ]
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 12994,
                        "end": 13056,
                        "loc": {
                          "start": {
                            "line": 343,
                            "column": 12
                          },
                          "end": {
                            "line": 343,
                            "column": 74
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 12994,
                          "end": 13055,
                          "loc": {
                            "start": {
                              "line": 343,
                              "column": 12
                            },
                            "end": {
                              "line": 343,
                              "column": 73
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 12994,
                            "end": 13021,
                            "loc": {
                              "start": {
                                "line": 343,
                                "column": 12
                              },
                              "end": {
                                "line": 343,
                                "column": 39
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 12994,
                              "end": 13008,
                              "loc": {
                                "start": {
                                  "line": 343,
                                  "column": 12
                                },
                                "end": {
                                  "line": 343,
                                  "column": 26
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 12994,
                                "end": 13005,
                                "loc": {
                                  "start": {
                                    "line": 343,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 343,
                                    "column": 23
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 12994,
                                  "end": 12998,
                                  "loc": {
                                    "start": {
                                      "line": 343,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 343,
                                      "column": 16
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 12999,
                                  "end": 13005,
                                  "loc": {
                                    "start": {
                                      "line": 343,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 343,
                                      "column": 23
                                    }
                                  },
                                  "name": "points"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Literal",
                                "start": 13006,
                                "end": 13007,
                                "loc": {
                                  "start": {
                                    "line": 343,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 343,
                                    "column": 25
                                  }
                                },
                                "value": 1,
                                "rawValue": 1,
                                "raw": "1"
                              },
                              "computed": true
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 13009,
                              "end": 13021,
                              "loc": {
                                "start": {
                                  "line": 343,
                                  "column": 27
                                },
                                "end": {
                                  "line": 343,
                                  "column": 39
                                }
                              },
                              "name": "addStateDiff"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "CallExpression",
                              "start": 13022,
                              "end": 13047,
                              "loc": {
                                "start": {
                                  "line": 343,
                                  "column": 40
                                },
                                "end": {
                                  "line": 343,
                                  "column": 65
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 13022,
                                "end": 13035,
                                "loc": {
                                  "start": {
                                    "line": 343,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 343,
                                    "column": 53
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 13022,
                                  "end": 13031,
                                  "loc": {
                                    "start": {
                                      "line": 343,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 343,
                                      "column": 49
                                    }
                                  },
                                  "name": "stateDiff"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 13032,
                                  "end": 13035,
                                  "loc": {
                                    "start": {
                                      "line": 343,
                                      "column": 50
                                    },
                                    "end": {
                                      "line": 343,
                                      "column": 53
                                    }
                                  },
                                  "name": "get"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 13036,
                                  "end": 13046,
                                  "loc": {
                                    "start": {
                                      "line": 343,
                                      "column": 54
                                    },
                                    "end": {
                                      "line": 343,
                                      "column": 64
                                    }
                                  },
                                  "value": "endPoint",
                                  "rawValue": "endPoint",
                                  "raw": "'endPoint'"
                                }
                              ]
                            },
                            {
                              "type": "Identifier",
                              "start": 13049,
                              "end": 13054,
                              "loc": {
                                "start": {
                                  "line": 343,
                                  "column": 67
                                },
                                "end": {
                                  "line": 343,
                                  "column": 72
                                }
                              },
                              "name": "alpha"
                            }
                          ]
                        }
                      },
                      "alternate": null
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 13068,
              "end": 13283,
              "loc": {
                "start": {
                  "line": 346,
                  "column": 4
                },
                "end": {
                  "line": 352,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 13068,
                "end": 13086,
                "loc": {
                  "start": {
                    "line": 346,
                    "column": 4
                  },
                  "end": {
                    "line": 346,
                    "column": 22
                  }
                },
                "name": "prepareAddOnServer"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 13086,
                "end": 13283,
                "loc": {
                  "start": {
                    "line": 346,
                    "column": 22
                  },
                  "end": {
                    "line": 352,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 13087,
                    "end": 13093,
                    "loc": {
                      "start": {
                        "line": 346,
                        "column": 23
                      },
                      "end": {
                        "line": 346,
                        "column": 29
                      }
                    },
                    "name": "sketch"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 13095,
                  "end": 13283,
                  "loc": {
                    "start": {
                      "line": 346,
                      "column": 31
                    },
                    "end": {
                      "line": 352,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 13105,
                      "end": 13277,
                      "loc": {
                        "start": {
                          "line": 347,
                          "column": 8
                        },
                        "end": {
                          "line": 351,
                          "column": 31
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 13112,
                        "end": 13276,
                        "loc": {
                          "start": {
                            "line": 347,
                            "column": 15
                          },
                          "end": {
                            "line": 351,
                            "column": 30
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 13112,
                          "end": 13261,
                          "loc": {
                            "start": {
                              "line": 347,
                              "column": 15
                            },
                            "end": {
                              "line": 351,
                              "column": 15
                            }
                          },
                          "object": {
                            "type": "CallExpression",
                            "start": 13112,
                            "end": 13256,
                            "loc": {
                              "start": {
                                "line": 347,
                                "column": 15
                              },
                              "end": {
                                "line": 351,
                                "column": 10
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 13112,
                              "end": 13132,
                              "loc": {
                                "start": {
                                  "line": 347,
                                  "column": 15
                                },
                                "end": {
                                  "line": 347,
                                  "column": 35
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 13112,
                                "end": 13121,
                                "loc": {
                                  "start": {
                                    "line": 347,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 347,
                                    "column": 24
                                  }
                                },
                                "name": "Statement"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 13122,
                                "end": 13132,
                                "loc": {
                                  "start": {
                                    "line": 347,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 347,
                                    "column": 35
                                  }
                                },
                                "name": "JSONExport"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "CallExpression",
                                "start": 13133,
                                "end": 13255,
                                "loc": {
                                  "start": {
                                    "line": 347,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 351,
                                    "column": 9
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 13133,
                                  "end": 13151,
                                  "loc": {
                                    "start": {
                                      "line": 347,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 347,
                                      "column": 54
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 13133,
                                    "end": 13143,
                                    "loc": {
                                      "start": {
                                        "line": 347,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 347,
                                        "column": 46
                                      }
                                    },
                                    "name": "Expression"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 13144,
                                    "end": 13151,
                                    "loc": {
                                      "start": {
                                        "line": 347,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 347,
                                        "column": 54
                                      }
                                    },
                                    "name": "AddLine"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 13165,
                                    "end": 13171,
                                    "loc": {
                                      "start": {
                                        "line": 348,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 348,
                                        "column": 18
                                      }
                                    },
                                    "name": "sketch"
                                  },
                                  {
                                    "type": "MemberExpression",
                                    "start": 13185,
                                    "end": 13208,
                                    "loc": {
                                      "start": {
                                        "line": 349,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 349,
                                        "column": 35
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 13185,
                                      "end": 13199,
                                      "loc": {
                                        "start": {
                                          "line": 349,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 349,
                                          "column": 26
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 13185,
                                        "end": 13196,
                                        "loc": {
                                          "start": {
                                            "line": 349,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 349,
                                            "column": 23
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 13185,
                                          "end": 13189,
                                          "loc": {
                                            "start": {
                                              "line": 349,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 349,
                                              "column": 16
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 13190,
                                          "end": 13196,
                                          "loc": {
                                            "start": {
                                              "line": 349,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 349,
                                              "column": 23
                                            }
                                          },
                                          "name": "points"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Literal",
                                        "start": 13197,
                                        "end": 13198,
                                        "loc": {
                                          "start": {
                                            "line": 349,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 349,
                                            "column": 25
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      "computed": true
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 13200,
                                      "end": 13208,
                                      "loc": {
                                        "start": {
                                          "line": 349,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 349,
                                          "column": 35
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  },
                                  {
                                    "type": "MemberExpression",
                                    "start": 13222,
                                    "end": 13245,
                                    "loc": {
                                      "start": {
                                        "line": 350,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 350,
                                        "column": 35
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 13222,
                                      "end": 13236,
                                      "loc": {
                                        "start": {
                                          "line": 350,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 350,
                                          "column": 26
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 13222,
                                        "end": 13233,
                                        "loc": {
                                          "start": {
                                            "line": 350,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 350,
                                            "column": 23
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 13222,
                                          "end": 13226,
                                          "loc": {
                                            "start": {
                                              "line": 350,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 350,
                                              "column": 16
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 13227,
                                          "end": 13233,
                                          "loc": {
                                            "start": {
                                              "line": 350,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 350,
                                              "column": 23
                                            }
                                          },
                                          "name": "points"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Literal",
                                        "start": 13234,
                                        "end": 13235,
                                        "loc": {
                                          "start": {
                                            "line": 350,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 350,
                                            "column": 25
                                          }
                                        },
                                        "value": 1,
                                        "rawValue": 1,
                                        "raw": "1"
                                      },
                                      "computed": true
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 13237,
                                      "end": 13245,
                                      "loc": {
                                        "start": {
                                          "line": 350,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 350,
                                          "column": 35
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  }
                                ]
                              }
                            ]
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13257,
                            "end": 13261,
                            "loc": {
                              "start": {
                                "line": 351,
                                "column": 11
                              },
                              "end": {
                                "line": 351,
                                "column": 15
                              }
                            },
                            "name": "then"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 13262,
                            "end": 13275,
                            "loc": {
                              "start": {
                                "line": 351,
                                "column": 16
                              },
                              "end": {
                                "line": 351,
                                "column": 29
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 13262,
                              "end": 13269,
                              "loc": {
                                "start": {
                                  "line": 351,
                                  "column": 16
                                },
                                "end": {
                                  "line": 351,
                                  "column": 23
                                }
                              },
                              "name": "parseTo"
                            },
                            "arguments": [
                              {
                                "type": "ThisExpression",
                                "start": 13270,
                                "end": 13274,
                                "loc": {
                                  "start": {
                                    "line": 351,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 351,
                                    "column": 28
                                  }
                                }
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 13289,
              "end": 13528,
              "loc": {
                "start": {
                  "line": 354,
                  "column": 4
                },
                "end": {
                  "line": 361,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 13289,
                "end": 13310,
                "loc": {
                  "start": {
                    "line": 354,
                    "column": 4
                  },
                  "end": {
                    "line": 354,
                    "column": 25
                  }
                },
                "name": "prepareUpdateToServer"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 13310,
                "end": 13528,
                "loc": {
                  "start": {
                    "line": 354,
                    "column": 25
                  },
                  "end": {
                    "line": 361,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 13311,
                    "end": 13317,
                    "loc": {
                      "start": {
                        "line": 354,
                        "column": 26
                      },
                      "end": {
                        "line": 354,
                        "column": 32
                      }
                    },
                    "name": "sketch"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 13319,
                  "end": 13528,
                  "loc": {
                    "start": {
                      "line": 354,
                      "column": 34
                    },
                    "end": {
                      "line": 361,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 13329,
                      "end": 13522,
                      "loc": {
                        "start": {
                          "line": 355,
                          "column": 8
                        },
                        "end": {
                          "line": 360,
                          "column": 31
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 13336,
                        "end": 13521,
                        "loc": {
                          "start": {
                            "line": 355,
                            "column": 15
                          },
                          "end": {
                            "line": 360,
                            "column": 30
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 13336,
                          "end": 13506,
                          "loc": {
                            "start": {
                              "line": 355,
                              "column": 15
                            },
                            "end": {
                              "line": 360,
                              "column": 15
                            }
                          },
                          "object": {
                            "type": "CallExpression",
                            "start": 13336,
                            "end": 13501,
                            "loc": {
                              "start": {
                                "line": 355,
                                "column": 15
                              },
                              "end": {
                                "line": 360,
                                "column": 10
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 13336,
                              "end": 13356,
                              "loc": {
                                "start": {
                                  "line": 355,
                                  "column": 15
                                },
                                "end": {
                                  "line": 355,
                                  "column": 35
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 13336,
                                "end": 13345,
                                "loc": {
                                  "start": {
                                    "line": 355,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 355,
                                    "column": 24
                                  }
                                },
                                "name": "Statement"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 13346,
                                "end": 13356,
                                "loc": {
                                  "start": {
                                    "line": 355,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 355,
                                    "column": 35
                                  }
                                },
                                "name": "JSONExport"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "CallExpression",
                                "start": 13357,
                                "end": 13500,
                                "loc": {
                                  "start": {
                                    "line": 355,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 360,
                                    "column": 9
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 13357,
                                  "end": 13378,
                                  "loc": {
                                    "start": {
                                      "line": 355,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 355,
                                      "column": 57
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 13357,
                                    "end": 13367,
                                    "loc": {
                                      "start": {
                                        "line": 355,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 355,
                                        "column": 46
                                      }
                                    },
                                    "name": "Expression"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 13368,
                                    "end": 13378,
                                    "loc": {
                                      "start": {
                                        "line": 355,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 355,
                                        "column": 57
                                      }
                                    },
                                    "name": "UpdateLine"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 13392,
                                    "end": 13398,
                                    "loc": {
                                      "start": {
                                        "line": 356,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 356,
                                        "column": 18
                                      }
                                    },
                                    "name": "sketch"
                                  },
                                  {
                                    "type": "ThisExpression",
                                    "start": 13412,
                                    "end": 13416,
                                    "loc": {
                                      "start": {
                                        "line": 357,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 357,
                                        "column": 16
                                      }
                                    }
                                  },
                                  {
                                    "type": "MemberExpression",
                                    "start": 13430,
                                    "end": 13453,
                                    "loc": {
                                      "start": {
                                        "line": 358,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 358,
                                        "column": 35
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 13430,
                                      "end": 13444,
                                      "loc": {
                                        "start": {
                                          "line": 358,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 358,
                                          "column": 26
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 13430,
                                        "end": 13441,
                                        "loc": {
                                          "start": {
                                            "line": 358,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 358,
                                            "column": 23
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 13430,
                                          "end": 13434,
                                          "loc": {
                                            "start": {
                                              "line": 358,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 358,
                                              "column": 16
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 13435,
                                          "end": 13441,
                                          "loc": {
                                            "start": {
                                              "line": 358,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 358,
                                              "column": 23
                                            }
                                          },
                                          "name": "points"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Literal",
                                        "start": 13442,
                                        "end": 13443,
                                        "loc": {
                                          "start": {
                                            "line": 358,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 358,
                                            "column": 25
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      "computed": true
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 13445,
                                      "end": 13453,
                                      "loc": {
                                        "start": {
                                          "line": 358,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 358,
                                          "column": 35
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  },
                                  {
                                    "type": "MemberExpression",
                                    "start": 13467,
                                    "end": 13490,
                                    "loc": {
                                      "start": {
                                        "line": 359,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 359,
                                        "column": 35
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 13467,
                                      "end": 13481,
                                      "loc": {
                                        "start": {
                                          "line": 359,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 359,
                                          "column": 26
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 13467,
                                        "end": 13478,
                                        "loc": {
                                          "start": {
                                            "line": 359,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 359,
                                            "column": 23
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 13467,
                                          "end": 13471,
                                          "loc": {
                                            "start": {
                                              "line": 359,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 359,
                                              "column": 16
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 13472,
                                          "end": 13478,
                                          "loc": {
                                            "start": {
                                              "line": 359,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 359,
                                              "column": 23
                                            }
                                          },
                                          "name": "points"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Literal",
                                        "start": 13479,
                                        "end": 13480,
                                        "loc": {
                                          "start": {
                                            "line": 359,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 359,
                                            "column": 25
                                          }
                                        },
                                        "value": 1,
                                        "rawValue": 1,
                                        "raw": "1"
                                      },
                                      "computed": true
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 13482,
                                      "end": 13490,
                                      "loc": {
                                        "start": {
                                          "line": 359,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 359,
                                          "column": 35
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  }
                                ]
                              }
                            ]
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13502,
                            "end": 13506,
                            "loc": {
                              "start": {
                                "line": 360,
                                "column": 11
                              },
                              "end": {
                                "line": 360,
                                "column": 15
                              }
                            },
                            "name": "then"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 13507,
                            "end": 13520,
                            "loc": {
                              "start": {
                                "line": 360,
                                "column": 16
                              },
                              "end": {
                                "line": 360,
                                "column": 29
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 13507,
                              "end": 13514,
                              "loc": {
                                "start": {
                                  "line": 360,
                                  "column": 16
                                },
                                "end": {
                                  "line": 360,
                                  "column": 23
                                }
                              },
                              "name": "parseTo"
                            },
                            "arguments": [
                              {
                                "type": "ThisExpression",
                                "start": 13515,
                                "end": 13519,
                                "loc": {
                                  "start": {
                                    "line": 360,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 360,
                                    "column": 28
                                  }
                                }
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 13534,
              "end": 13641,
              "loc": {
                "start": {
                  "line": 363,
                  "column": 4
                },
                "end": {
                  "line": 365,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 13534,
                "end": 13555,
                "loc": {
                  "start": {
                    "line": 363,
                    "column": 4
                  },
                  "end": {
                    "line": 363,
                    "column": 25
                  }
                },
                "name": "prepareRemoveOnServer"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 13555,
                "end": 13641,
                "loc": {
                  "start": {
                    "line": 363,
                    "column": 25
                  },
                  "end": {
                    "line": 365,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 13556,
                    "end": 13562,
                    "loc": {
                      "start": {
                        "line": 363,
                        "column": 26
                      },
                      "end": {
                        "line": 363,
                        "column": 32
                      }
                    },
                    "name": "sketch"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 13564,
                  "end": 13641,
                  "loc": {
                    "start": {
                      "line": 363,
                      "column": 34
                    },
                    "end": {
                      "line": 365,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 13574,
                      "end": 13635,
                      "loc": {
                        "start": {
                          "line": 364,
                          "column": 8
                        },
                        "end": {
                          "line": 364,
                          "column": 69
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 13581,
                        "end": 13634,
                        "loc": {
                          "start": {
                            "line": 364,
                            "column": 15
                          },
                          "end": {
                            "line": 364,
                            "column": 68
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 13581,
                          "end": 13597,
                          "loc": {
                            "start": {
                              "line": 364,
                              "column": 15
                            },
                            "end": {
                              "line": 364,
                              "column": 31
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 13581,
                            "end": 13590,
                            "loc": {
                              "start": {
                                "line": 364,
                                "column": 15
                              },
                              "end": {
                                "line": 364,
                                "column": 24
                              }
                            },
                            "name": "Statement"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13591,
                            "end": 13597,
                            "loc": {
                              "start": {
                                "line": 364,
                                "column": 25
                              },
                              "end": {
                                "line": 364,
                                "column": 31
                              }
                            },
                            "name": "Return"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 13598,
                            "end": 13633,
                            "loc": {
                              "start": {
                                "line": 364,
                                "column": 32
                              },
                              "end": {
                                "line": 364,
                                "column": 67
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 13598,
                              "end": 13619,
                              "loc": {
                                "start": {
                                  "line": 364,
                                  "column": 32
                                },
                                "end": {
                                  "line": 364,
                                  "column": 53
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 13598,
                                "end": 13608,
                                "loc": {
                                  "start": {
                                    "line": 364,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 364,
                                    "column": 42
                                  }
                                },
                                "name": "Expression"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 13609,
                                "end": 13619,
                                "loc": {
                                  "start": {
                                    "line": 364,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 364,
                                    "column": 53
                                  }
                                },
                                "name": "RemoveLine"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 13620,
                                "end": 13626,
                                "loc": {
                                  "start": {
                                    "line": 364,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 364,
                                    "column": 60
                                  }
                                },
                                "name": "sketch"
                              },
                              {
                                "type": "ThisExpression",
                                "start": 13628,
                                "end": 13632,
                                "loc": {
                                  "start": {
                                    "line": 364,
                                    "column": 62
                                  },
                                  "end": {
                                    "line": 364,
                                    "column": 66
                                  }
                                }
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            }
          ]
        },
        "leadingComments": [
          {
            "type": "CommentLine",
            "value": "================================ Sketch.Line =========================================",
            "start": 6652,
            "end": 6740,
            "loc": {
              "start": {
                "line": 185,
                "column": 0
              },
              "end": {
                "line": 185,
                "column": 88
              }
            },
            "range": [
              6652,
              6740
            ]
          }
        ],
        "trailingComments": []
      },
      "specifiers": [],
      "source": null,
      "leadingComments": [
        {
          "type": "CommentLine",
          "value": "================================ Sketch.Line =========================================",
          "start": 6652,
          "end": 6740,
          "loc": {
            "start": {
              "line": 185,
              "column": 0
            },
            "end": {
              "line": 185,
              "column": 88
            }
          },
          "range": [
            6652,
            6740
          ]
        }
      ]
    },
    {
      "type": "ExpressionStatement",
      "start": 13644,
      "end": 13690,
      "loc": {
        "start": {
          "line": 367,
          "column": 0
        },
        "end": {
          "line": 367,
          "column": 46
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 13644,
        "end": 13689,
        "loc": {
          "start": {
            "line": 367,
            "column": 0
          },
          "end": {
            "line": 367,
            "column": 45
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 13644,
          "end": 13682,
          "loc": {
            "start": {
              "line": 367,
              "column": 0
            },
            "end": {
              "line": 367,
              "column": 38
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 13644,
            "end": 13671,
            "loc": {
              "start": {
                "line": 367,
                "column": 0
              },
              "end": {
                "line": 367,
                "column": 27
              }
            },
            "object": {
              "type": "Identifier",
              "start": 13644,
              "end": 13658,
              "loc": {
                "start": {
                  "line": 367,
                  "column": 0
                },
                "end": {
                  "line": 367,
                  "column": 14
                }
              },
              "name": "ClassCadObject"
            },
            "property": {
              "type": "Identifier",
              "start": 13659,
              "end": 13671,
              "loc": {
                "start": {
                  "line": 367,
                  "column": 15
                },
                "end": {
                  "line": 367,
                  "column": 27
                }
              },
              "name": "classMapping"
            },
            "computed": false
          },
          "property": {
            "type": "Literal",
            "start": 13672,
            "end": 13681,
            "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": 13685,
          "end": 13689,
          "loc": {
            "start": {
              "line": 367,
              "column": 41
            },
            "end": {
              "line": 367,
              "column": 45
            }
          },
          "name": "Line"
        }
      },
      "trailingComments": [
        {
          "type": "CommentLine",
          "value": "================================ Sketch.Arc =========================================",
          "start": 13692,
          "end": 13779,
          "loc": {
            "start": {
              "line": 369,
              "column": 0
            },
            "end": {
              "line": 369,
              "column": 87
            }
          },
          "range": [
            13692,
            13779
          ]
        }
      ]
    },
    {
      "type": "ExportNamedDeclaration",
      "start": 13780,
      "end": 24702,
      "loc": {
        "start": {
          "line": 370,
          "column": 0
        },
        "end": {
          "line": 636,
          "column": 1
        }
      },
      "declaration": {
        "type": "ClassDeclaration",
        "start": 13787,
        "end": 24702,
        "loc": {
          "start": {
            "line": 370,
            "column": 7
          },
          "end": {
            "line": 636,
            "column": 1
          }
        },
        "id": {
          "type": "Identifier",
          "start": 13793,
          "end": 13796,
          "loc": {
            "start": {
              "line": 370,
              "column": 13
            },
            "end": {
              "line": 370,
              "column": 16
            }
          },
          "name": "Arc",
          "leadingComments": null
        },
        "superClass": {
          "type": "Identifier",
          "start": 13805,
          "end": 13820,
          "loc": {
            "start": {
              "line": 370,
              "column": 25
            },
            "end": {
              "line": 370,
              "column": 40
            }
          },
          "name": "GeometricObject"
        },
        "body": {
          "type": "ClassBody",
          "start": 13821,
          "end": 24702,
          "loc": {
            "start": {
              "line": 370,
              "column": 41
            },
            "end": {
              "line": 636,
              "column": 1
            }
          },
          "body": [
            {
              "type": "MethodDefinition",
              "start": 13827,
              "end": 15450,
              "loc": {
                "start": {
                  "line": 371,
                  "column": 4
                },
                "end": {
                  "line": 407,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 13827,
                "end": 13838,
                "loc": {
                  "start": {
                    "line": 371,
                    "column": 4
                  },
                  "end": {
                    "line": 371,
                    "column": 15
                  }
                },
                "name": "constructor"
              },
              "static": false,
              "kind": "constructor",
              "value": {
                "type": "FunctionExpression",
                "start": 13838,
                "end": 15450,
                "loc": {
                  "start": {
                    "line": 371,
                    "column": 15
                  },
                  "end": {
                    "line": 407,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 13839,
                    "end": 13848,
                    "loc": {
                      "start": {
                        "line": 371,
                        "column": 16
                      },
                      "end": {
                        "line": 371,
                        "column": 25
                      }
                    },
                    "name": "pointSize"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 13850,
                  "end": 15450,
                  "loc": {
                    "start": {
                      "line": 371,
                      "column": 27
                    },
                    "end": {
                      "line": 407,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 13860,
                      "end": 13868,
                      "loc": {
                        "start": {
                          "line": 372,
                          "column": 8
                        },
                        "end": {
                          "line": 372,
                          "column": 16
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 13860,
                        "end": 13867,
                        "loc": {
                          "start": {
                            "line": 372,
                            "column": 8
                          },
                          "end": {
                            "line": 372,
                            "column": 15
                          }
                        },
                        "callee": {
                          "type": "Super",
                          "start": 13860,
                          "end": 13865,
                          "loc": {
                            "start": {
                              "line": 372,
                              "column": 8
                            },
                            "end": {
                              "line": 372,
                              "column": 13
                            }
                          }
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 13877,
                      "end": 13895,
                      "loc": {
                        "start": {
                          "line": 373,
                          "column": 8
                        },
                        "end": {
                          "line": 373,
                          "column": 26
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 13877,
                        "end": 13894,
                        "loc": {
                          "start": {
                            "line": 373,
                            "column": 8
                          },
                          "end": {
                            "line": 373,
                            "column": 25
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 13877,
                          "end": 13886,
                          "loc": {
                            "start": {
                              "line": 373,
                              "column": 8
                            },
                            "end": {
                              "line": 373,
                              "column": 17
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 13877,
                            "end": 13881,
                            "loc": {
                              "start": {
                                "line": 373,
                                "column": 8
                              },
                              "end": {
                                "line": 373,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13882,
                            "end": 13886,
                            "loc": {
                              "start": {
                                "line": 373,
                                "column": 13
                              },
                              "end": {
                                "line": 373,
                                "column": 17
                              }
                            },
                            "name": "type"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 13889,
                          "end": 13894,
                          "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": 13905,
                          "end": 13956,
                          "loc": {
                            "start": {
                              "line": 375,
                              "column": 8
                            },
                            "end": {
                              "line": 375,
                              "column": 59
                            }
                          },
                          "range": [
                            13905,
                            13956
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 13965,
                      "end": 14001,
                      "loc": {
                        "start": {
                          "line": 376,
                          "column": 8
                        },
                        "end": {
                          "line": 376,
                          "column": 44
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 13969,
                          "end": 14000,
                          "loc": {
                            "start": {
                              "line": 376,
                              "column": 12
                            },
                            "end": {
                              "line": 376,
                              "column": 43
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 13969,
                            "end": 13977,
                            "loc": {
                              "start": {
                                "line": 376,
                                "column": 12
                              },
                              "end": {
                                "line": 376,
                                "column": 20
                              }
                            },
                            "name": "geometry",
                            "leadingComments": null
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 13980,
                            "end": 14000,
                            "loc": {
                              "start": {
                                "line": 376,
                                "column": 23
                              },
                              "end": {
                                "line": 376,
                                "column": 43
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 13984,
                              "end": 13998,
                              "loc": {
                                "start": {
                                  "line": 376,
                                  "column": 27
                                },
                                "end": {
                                  "line": 376,
                                  "column": 41
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 13984,
                                "end": 13989,
                                "loc": {
                                  "start": {
                                    "line": 376,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 376,
                                    "column": 32
                                  }
                                },
                                "name": "THREE"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 13990,
                                "end": 13998,
                                "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": 13905,
                          "end": 13956,
                          "loc": {
                            "start": {
                              "line": 375,
                              "column": 8
                            },
                            "end": {
                              "line": 375,
                              "column": 59
                            }
                          },
                          "range": [
                            13905,
                            13956
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ForStatement",
                      "start": 14010,
                      "end": 14184,
                      "loc": {
                        "start": {
                          "line": 377,
                          "column": 8
                        },
                        "end": {
                          "line": 378,
                          "column": 91
                        }
                      },
                      "init": {
                        "type": "VariableDeclaration",
                        "start": 14015,
                        "end": 14024,
                        "loc": {
                          "start": {
                            "line": 377,
                            "column": 13
                          },
                          "end": {
                            "line": 377,
                            "column": 22
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 14019,
                            "end": 14024,
                            "loc": {
                              "start": {
                                "line": 377,
                                "column": 17
                              },
                              "end": {
                                "line": 377,
                                "column": 22
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 14019,
                              "end": 14020,
                              "loc": {
                                "start": {
                                  "line": 377,
                                  "column": 17
                                },
                                "end": {
                                  "line": 377,
                                  "column": 18
                                }
                              },
                              "name": "i"
                            },
                            "init": {
                              "type": "Literal",
                              "start": 14023,
                              "end": 14024,
                              "loc": {
                                "start": {
                                  "line": 377,
                                  "column": 21
                                },
                                "end": {
                                  "line": 377,
                                  "column": 22
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            }
                          }
                        ],
                        "kind": "var"
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 14026,
                        "end": 14050,
                        "loc": {
                          "start": {
                            "line": 377,
                            "column": 24
                          },
                          "end": {
                            "line": 377,
                            "column": 48
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 14026,
                          "end": 14027,
                          "loc": {
                            "start": {
                              "line": 377,
                              "column": 24
                            },
                            "end": {
                              "line": 377,
                              "column": 25
                            }
                          },
                          "name": "i"
                        },
                        "operator": "<=",
                        "right": {
                          "type": "MemberExpression",
                          "start": 14031,
                          "end": 14050,
                          "loc": {
                            "start": {
                              "line": 377,
                              "column": 29
                            },
                            "end": {
                              "line": 377,
                              "column": 48
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 14031,
                            "end": 14035,
                            "loc": {
                              "start": {
                                "line": 377,
                                "column": 29
                              },
                              "end": {
                                "line": 377,
                                "column": 33
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14036,
                            "end": 14050,
                            "loc": {
                              "start": {
                                "line": 377,
                                "column": 34
                              },
                              "end": {
                                "line": 377,
                                "column": 48
                              }
                            },
                            "name": "meshResolution"
                          },
                          "computed": false
                        }
                      },
                      "update": {
                        "type": "UpdateExpression",
                        "start": 14052,
                        "end": 14055,
                        "loc": {
                          "start": {
                            "line": 377,
                            "column": 50
                          },
                          "end": {
                            "line": 377,
                            "column": 53
                          }
                        },
                        "operator": "++",
                        "prefix": false,
                        "argument": {
                          "type": "Identifier",
                          "start": 14052,
                          "end": 14053,
                          "loc": {
                            "start": {
                              "line": 377,
                              "column": 50
                            },
                            "end": {
                              "line": 377,
                              "column": 51
                            }
                          },
                          "name": "i"
                        }
                      },
                      "body": {
                        "type": "ExpressionStatement",
                        "start": 14105,
                        "end": 14184,
                        "loc": {
                          "start": {
                            "line": 378,
                            "column": 12
                          },
                          "end": {
                            "line": 378,
                            "column": 91
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 14105,
                          "end": 14183,
                          "loc": {
                            "start": {
                              "line": 378,
                              "column": 12
                            },
                            "end": {
                              "line": 378,
                              "column": 90
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 14105,
                            "end": 14127,
                            "loc": {
                              "start": {
                                "line": 378,
                                "column": 12
                              },
                              "end": {
                                "line": 378,
                                "column": 34
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 14105,
                              "end": 14122,
                              "loc": {
                                "start": {
                                  "line": 378,
                                  "column": 12
                                },
                                "end": {
                                  "line": 378,
                                  "column": 29
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 14105,
                                "end": 14113,
                                "loc": {
                                  "start": {
                                    "line": 378,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 378,
                                    "column": 20
                                  }
                                },
                                "name": "geometry",
                                "leadingComments": null
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 14114,
                                "end": 14122,
                                "loc": {
                                  "start": {
                                    "line": 378,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 378,
                                    "column": 29
                                  }
                                },
                                "name": "vertices"
                              },
                              "computed": false,
                              "leadingComments": null
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 14123,
                              "end": 14127,
                              "loc": {
                                "start": {
                                  "line": 378,
                                  "column": 30
                                },
                                "end": {
                                  "line": 378,
                                  "column": 34
                                }
                              },
                              "name": "push"
                            },
                            "computed": false,
                            "leadingComments": null
                          },
                          "arguments": [
                            {
                              "type": "NewExpression",
                              "start": 14128,
                              "end": 14154,
                              "loc": {
                                "start": {
                                  "line": 378,
                                  "column": 35
                                },
                                "end": {
                                  "line": 378,
                                  "column": 61
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 14132,
                                "end": 14145,
                                "loc": {
                                  "start": {
                                    "line": 378,
                                    "column": 39
                                  },
                                  "end": {
                                    "line": 378,
                                    "column": 52
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 14132,
                                  "end": 14137,
                                  "loc": {
                                    "start": {
                                      "line": 378,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 378,
                                      "column": 44
                                    }
                                  },
                                  "name": "THREE"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 14138,
                                  "end": 14145,
                                  "loc": {
                                    "start": {
                                      "line": 378,
                                      "column": 45
                                    },
                                    "end": {
                                      "line": 378,
                                      "column": 52
                                    }
                                  },
                                  "name": "Vector3"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 14146,
                                  "end": 14147,
                                  "loc": {
                                    "start": {
                                      "line": 378,
                                      "column": 53
                                    },
                                    "end": {
                                      "line": 378,
                                      "column": 54
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Literal",
                                  "start": 14149,
                                  "end": 14150,
                                  "loc": {
                                    "start": {
                                      "line": 378,
                                      "column": 56
                                    },
                                    "end": {
                                      "line": 378,
                                      "column": 57
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Literal",
                                  "start": 14152,
                                  "end": 14153,
                                  "loc": {
                                    "start": {
                                      "line": 378,
                                      "column": 59
                                    },
                                    "end": {
                                      "line": 378,
                                      "column": 60
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            },
                            {
                              "type": "NewExpression",
                              "start": 14156,
                              "end": 14182,
                              "loc": {
                                "start": {
                                  "line": 378,
                                  "column": 63
                                },
                                "end": {
                                  "line": 378,
                                  "column": 89
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 14160,
                                "end": 14173,
                                "loc": {
                                  "start": {
                                    "line": 378,
                                    "column": 67
                                  },
                                  "end": {
                                    "line": 378,
                                    "column": 80
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 14160,
                                  "end": 14165,
                                  "loc": {
                                    "start": {
                                      "line": 378,
                                      "column": 67
                                    },
                                    "end": {
                                      "line": 378,
                                      "column": 72
                                    }
                                  },
                                  "name": "THREE"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 14166,
                                  "end": 14173,
                                  "loc": {
                                    "start": {
                                      "line": 378,
                                      "column": 73
                                    },
                                    "end": {
                                      "line": 378,
                                      "column": 80
                                    }
                                  },
                                  "name": "Vector3"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 14174,
                                  "end": 14175,
                                  "loc": {
                                    "start": {
                                      "line": 378,
                                      "column": 81
                                    },
                                    "end": {
                                      "line": 378,
                                      "column": 82
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Literal",
                                  "start": 14177,
                                  "end": 14178,
                                  "loc": {
                                    "start": {
                                      "line": 378,
                                      "column": 84
                                    },
                                    "end": {
                                      "line": 378,
                                      "column": 85
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                {
                                  "type": "Literal",
                                  "start": 14180,
                                  "end": 14181,
                                  "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": 14058,
                            "end": 14092,
                            "loc": {
                              "start": {
                                "line": 377,
                                "column": 56
                              },
                              "end": {
                                "line": 377,
                                "column": 90
                              }
                            },
                            "range": [
                              14058,
                              14092
                            ]
                          }
                        ]
                      }
                    },
                    {
                      "type": "ForStatement",
                      "start": 14193,
                      "end": 14457,
                      "loc": {
                        "start": {
                          "line": 379,
                          "column": 8
                        },
                        "end": {
                          "line": 384,
                          "column": 9
                        }
                      },
                      "init": {
                        "type": "VariableDeclaration",
                        "start": 14198,
                        "end": 14207,
                        "loc": {
                          "start": {
                            "line": 379,
                            "column": 13
                          },
                          "end": {
                            "line": 379,
                            "column": 22
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 14202,
                            "end": 14207,
                            "loc": {
                              "start": {
                                "line": 379,
                                "column": 17
                              },
                              "end": {
                                "line": 379,
                                "column": 22
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 14202,
                              "end": 14203,
                              "loc": {
                                "start": {
                                  "line": 379,
                                  "column": 17
                                },
                                "end": {
                                  "line": 379,
                                  "column": 18
                                }
                              },
                              "name": "i"
                            },
                            "init": {
                              "type": "Literal",
                              "start": 14206,
                              "end": 14207,
                              "loc": {
                                "start": {
                                  "line": 379,
                                  "column": 21
                                },
                                "end": {
                                  "line": 379,
                                  "column": 22
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            }
                          }
                        ],
                        "kind": "var"
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 14209,
                        "end": 14232,
                        "loc": {
                          "start": {
                            "line": 379,
                            "column": 24
                          },
                          "end": {
                            "line": 379,
                            "column": 47
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 14209,
                          "end": 14210,
                          "loc": {
                            "start": {
                              "line": 379,
                              "column": 24
                            },
                            "end": {
                              "line": 379,
                              "column": 25
                            }
                          },
                          "name": "i"
                        },
                        "operator": "<",
                        "right": {
                          "type": "MemberExpression",
                          "start": 14213,
                          "end": 14232,
                          "loc": {
                            "start": {
                              "line": 379,
                              "column": 28
                            },
                            "end": {
                              "line": 379,
                              "column": 47
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 14213,
                            "end": 14217,
                            "loc": {
                              "start": {
                                "line": 379,
                                "column": 28
                              },
                              "end": {
                                "line": 379,
                                "column": 32
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14218,
                            "end": 14232,
                            "loc": {
                              "start": {
                                "line": 379,
                                "column": 33
                              },
                              "end": {
                                "line": 379,
                                "column": 47
                              }
                            },
                            "name": "meshResolution"
                          },
                          "computed": false
                        }
                      },
                      "update": {
                        "type": "UpdateExpression",
                        "start": 14234,
                        "end": 14237,
                        "loc": {
                          "start": {
                            "line": 379,
                            "column": 49
                          },
                          "end": {
                            "line": 379,
                            "column": 52
                          }
                        },
                        "operator": "++",
                        "prefix": false,
                        "argument": {
                          "type": "Identifier",
                          "start": 14234,
                          "end": 14235,
                          "loc": {
                            "start": {
                              "line": 379,
                              "column": 49
                            },
                            "end": {
                              "line": 379,
                              "column": 50
                            }
                          },
                          "name": "i"
                        }
                      },
                      "body": {
                        "type": "BlockStatement",
                        "start": 14239,
                        "end": 14457,
                        "loc": {
                          "start": {
                            "line": 379,
                            "column": 54
                          },
                          "end": {
                            "line": 384,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 14253,
                            "end": 14447,
                            "loc": {
                              "start": {
                                "line": 380,
                                "column": 12
                              },
                              "end": {
                                "line": 383,
                                "column": 14
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 14253,
                              "end": 14446,
                              "loc": {
                                "start": {
                                  "line": 380,
                                  "column": 12
                                },
                                "end": {
                                  "line": 383,
                                  "column": 13
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 14253,
                                "end": 14272,
                                "loc": {
                                  "start": {
                                    "line": 380,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 380,
                                    "column": 31
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 14253,
                                  "end": 14267,
                                  "loc": {
                                    "start": {
                                      "line": 380,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 380,
                                      "column": 26
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 14253,
                                    "end": 14261,
                                    "loc": {
                                      "start": {
                                        "line": 380,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 380,
                                        "column": 20
                                      }
                                    },
                                    "name": "geometry"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 14262,
                                    "end": 14267,
                                    "loc": {
                                      "start": {
                                        "line": 380,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 380,
                                        "column": 26
                                      }
                                    },
                                    "name": "faces"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 14268,
                                  "end": 14272,
                                  "loc": {
                                    "start": {
                                      "line": 380,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 380,
                                      "column": 31
                                    }
                                  },
                                  "name": "push"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "NewExpression",
                                  "start": 14290,
                                  "end": 14352,
                                  "loc": {
                                    "start": {
                                      "line": 381,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 381,
                                      "column": 78
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 14294,
                                    "end": 14305,
                                    "loc": {
                                      "start": {
                                        "line": 381,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 381,
                                        "column": 31
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 14294,
                                      "end": 14299,
                                      "loc": {
                                        "start": {
                                          "line": 381,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 381,
                                          "column": 25
                                        }
                                      },
                                      "name": "THREE"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 14300,
                                      "end": 14305,
                                      "loc": {
                                        "start": {
                                          "line": 381,
                                          "column": 26
                                        },
                                        "end": {
                                          "line": 381,
                                          "column": 31
                                        }
                                      },
                                      "name": "Face3"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "BinaryExpression",
                                      "start": 14306,
                                      "end": 14309,
                                      "loc": {
                                        "start": {
                                          "line": 381,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 381,
                                          "column": 35
                                        }
                                      },
                                      "left": {
                                        "type": "Literal",
                                        "start": 14306,
                                        "end": 14307,
                                        "loc": {
                                          "start": {
                                            "line": 381,
                                            "column": 32
                                          },
                                          "end": {
                                            "line": 381,
                                            "column": 33
                                          }
                                        },
                                        "value": 2,
                                        "rawValue": 2,
                                        "raw": "2"
                                      },
                                      "operator": "*",
                                      "right": {
                                        "type": "Identifier",
                                        "start": 14308,
                                        "end": 14309,
                                        "loc": {
                                          "start": {
                                            "line": 381,
                                            "column": 34
                                          },
                                          "end": {
                                            "line": 381,
                                            "column": 35
                                          }
                                        },
                                        "name": "i"
                                      }
                                    },
                                    {
                                      "type": "BinaryExpression",
                                      "start": 14311,
                                      "end": 14316,
                                      "loc": {
                                        "start": {
                                          "line": 381,
                                          "column": 37
                                        },
                                        "end": {
                                          "line": 381,
                                          "column": 42
                                        }
                                      },
                                      "left": {
                                        "type": "BinaryExpression",
                                        "start": 14311,
                                        "end": 14314,
                                        "loc": {
                                          "start": {
                                            "line": 381,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 381,
                                            "column": 40
                                          }
                                        },
                                        "left": {
                                          "type": "Literal",
                                          "start": 14311,
                                          "end": 14312,
                                          "loc": {
                                            "start": {
                                              "line": 381,
                                              "column": 37
                                            },
                                            "end": {
                                              "line": 381,
                                              "column": 38
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 14313,
                                          "end": 14314,
                                          "loc": {
                                            "start": {
                                              "line": 381,
                                              "column": 39
                                            },
                                            "end": {
                                              "line": 381,
                                              "column": 40
                                            }
                                          },
                                          "name": "i"
                                        }
                                      },
                                      "operator": "+",
                                      "right": {
                                        "type": "Literal",
                                        "start": 14315,
                                        "end": 14316,
                                        "loc": {
                                          "start": {
                                            "line": 381,
                                            "column": 41
                                          },
                                          "end": {
                                            "line": 381,
                                            "column": 42
                                          }
                                        },
                                        "value": 2,
                                        "rawValue": 2,
                                        "raw": "2"
                                      }
                                    },
                                    {
                                      "type": "BinaryExpression",
                                      "start": 14318,
                                      "end": 14323,
                                      "loc": {
                                        "start": {
                                          "line": 381,
                                          "column": 44
                                        },
                                        "end": {
                                          "line": 381,
                                          "column": 49
                                        }
                                      },
                                      "left": {
                                        "type": "BinaryExpression",
                                        "start": 14318,
                                        "end": 14321,
                                        "loc": {
                                          "start": {
                                            "line": 381,
                                            "column": 44
                                          },
                                          "end": {
                                            "line": 381,
                                            "column": 47
                                          }
                                        },
                                        "left": {
                                          "type": "Literal",
                                          "start": 14318,
                                          "end": 14319,
                                          "loc": {
                                            "start": {
                                              "line": 381,
                                              "column": 44
                                            },
                                            "end": {
                                              "line": 381,
                                              "column": 45
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 14320,
                                          "end": 14321,
                                          "loc": {
                                            "start": {
                                              "line": 381,
                                              "column": 46
                                            },
                                            "end": {
                                              "line": 381,
                                              "column": 47
                                            }
                                          },
                                          "name": "i"
                                        }
                                      },
                                      "operator": "+",
                                      "right": {
                                        "type": "Literal",
                                        "start": 14322,
                                        "end": 14323,
                                        "loc": {
                                          "start": {
                                            "line": 381,
                                            "column": 48
                                          },
                                          "end": {
                                            "line": 381,
                                            "column": 49
                                          }
                                        },
                                        "value": 3,
                                        "rawValue": 3,
                                        "raw": "3"
                                      }
                                    },
                                    {
                                      "type": "NewExpression",
                                      "start": 14325,
                                      "end": 14351,
                                      "loc": {
                                        "start": {
                                          "line": 381,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 381,
                                          "column": 77
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 14329,
                                        "end": 14342,
                                        "loc": {
                                          "start": {
                                            "line": 381,
                                            "column": 55
                                          },
                                          "end": {
                                            "line": 381,
                                            "column": 68
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 14329,
                                          "end": 14334,
                                          "loc": {
                                            "start": {
                                              "line": 381,
                                              "column": 55
                                            },
                                            "end": {
                                              "line": 381,
                                              "column": 60
                                            }
                                          },
                                          "name": "THREE"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 14335,
                                          "end": 14342,
                                          "loc": {
                                            "start": {
                                              "line": 381,
                                              "column": 61
                                            },
                                            "end": {
                                              "line": 381,
                                              "column": 68
                                            }
                                          },
                                          "name": "Vector3"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Literal",
                                          "start": 14343,
                                          "end": 14344,
                                          "loc": {
                                            "start": {
                                              "line": 381,
                                              "column": 69
                                            },
                                            "end": {
                                              "line": 381,
                                              "column": 70
                                            }
                                          },
                                          "value": 0,
                                          "rawValue": 0,
                                          "raw": "0"
                                        },
                                        {
                                          "type": "Literal",
                                          "start": 14346,
                                          "end": 14347,
                                          "loc": {
                                            "start": {
                                              "line": 381,
                                              "column": 72
                                            },
                                            "end": {
                                              "line": 381,
                                              "column": 73
                                            }
                                          },
                                          "value": 0,
                                          "rawValue": 0,
                                          "raw": "0"
                                        },
                                        {
                                          "type": "Literal",
                                          "start": 14349,
                                          "end": 14350,
                                          "loc": {
                                            "start": {
                                              "line": 381,
                                              "column": 75
                                            },
                                            "end": {
                                              "line": 381,
                                              "column": 76
                                            }
                                          },
                                          "value": 1,
                                          "rawValue": 1,
                                          "raw": "1"
                                        }
                                      ]
                                    }
                                  ]
                                },
                                {
                                  "type": "NewExpression",
                                  "start": 14370,
                                  "end": 14432,
                                  "loc": {
                                    "start": {
                                      "line": 382,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 382,
                                      "column": 78
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 14374,
                                    "end": 14385,
                                    "loc": {
                                      "start": {
                                        "line": 382,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 382,
                                        "column": 31
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 14374,
                                      "end": 14379,
                                      "loc": {
                                        "start": {
                                          "line": 382,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 382,
                                          "column": 25
                                        }
                                      },
                                      "name": "THREE"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 14380,
                                      "end": 14385,
                                      "loc": {
                                        "start": {
                                          "line": 382,
                                          "column": 26
                                        },
                                        "end": {
                                          "line": 382,
                                          "column": 31
                                        }
                                      },
                                      "name": "Face3"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "BinaryExpression",
                                      "start": 14386,
                                      "end": 14391,
                                      "loc": {
                                        "start": {
                                          "line": 382,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 382,
                                          "column": 37
                                        }
                                      },
                                      "left": {
                                        "type": "BinaryExpression",
                                        "start": 14386,
                                        "end": 14389,
                                        "loc": {
                                          "start": {
                                            "line": 382,
                                            "column": 32
                                          },
                                          "end": {
                                            "line": 382,
                                            "column": 35
                                          }
                                        },
                                        "left": {
                                          "type": "Literal",
                                          "start": 14386,
                                          "end": 14387,
                                          "loc": {
                                            "start": {
                                              "line": 382,
                                              "column": 32
                                            },
                                            "end": {
                                              "line": 382,
                                              "column": 33
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 14388,
                                          "end": 14389,
                                          "loc": {
                                            "start": {
                                              "line": 382,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 382,
                                              "column": 35
                                            }
                                          },
                                          "name": "i"
                                        }
                                      },
                                      "operator": "+",
                                      "right": {
                                        "type": "Literal",
                                        "start": 14390,
                                        "end": 14391,
                                        "loc": {
                                          "start": {
                                            "line": 382,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 382,
                                            "column": 37
                                          }
                                        },
                                        "value": 3,
                                        "rawValue": 3,
                                        "raw": "3"
                                      }
                                    },
                                    {
                                      "type": "BinaryExpression",
                                      "start": 14393,
                                      "end": 14398,
                                      "loc": {
                                        "start": {
                                          "line": 382,
                                          "column": 39
                                        },
                                        "end": {
                                          "line": 382,
                                          "column": 44
                                        }
                                      },
                                      "left": {
                                        "type": "BinaryExpression",
                                        "start": 14393,
                                        "end": 14396,
                                        "loc": {
                                          "start": {
                                            "line": 382,
                                            "column": 39
                                          },
                                          "end": {
                                            "line": 382,
                                            "column": 42
                                          }
                                        },
                                        "left": {
                                          "type": "Literal",
                                          "start": 14393,
                                          "end": 14394,
                                          "loc": {
                                            "start": {
                                              "line": 382,
                                              "column": 39
                                            },
                                            "end": {
                                              "line": 382,
                                              "column": 40
                                            }
                                          },
                                          "value": 2,
                                          "rawValue": 2,
                                          "raw": "2"
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 14395,
                                          "end": 14396,
                                          "loc": {
                                            "start": {
                                              "line": 382,
                                              "column": 41
                                            },
                                            "end": {
                                              "line": 382,
                                              "column": 42
                                            }
                                          },
                                          "name": "i"
                                        }
                                      },
                                      "operator": "+",
                                      "right": {
                                        "type": "Literal",
                                        "start": 14397,
                                        "end": 14398,
                                        "loc": {
                                          "start": {
                                            "line": 382,
                                            "column": 43
                                          },
                                          "end": {
                                            "line": 382,
                                            "column": 44
                                          }
                                        },
                                        "value": 1,
                                        "rawValue": 1,
                                        "raw": "1"
                                      }
                                    },
                                    {
                                      "type": "BinaryExpression",
                                      "start": 14400,
                                      "end": 14403,
                                      "loc": {
                                        "start": {
                                          "line": 382,
                                          "column": 46
                                        },
                                        "end": {
                                          "line": 382,
                                          "column": 49
                                        }
                                      },
                                      "left": {
                                        "type": "Literal",
                                        "start": 14400,
                                        "end": 14401,
                                        "loc": {
                                          "start": {
                                            "line": 382,
                                            "column": 46
                                          },
                                          "end": {
                                            "line": 382,
                                            "column": 47
                                          }
                                        },
                                        "value": 2,
                                        "rawValue": 2,
                                        "raw": "2"
                                      },
                                      "operator": "*",
                                      "right": {
                                        "type": "Identifier",
                                        "start": 14402,
                                        "end": 14403,
                                        "loc": {
                                          "start": {
                                            "line": 382,
                                            "column": 48
                                          },
                                          "end": {
                                            "line": 382,
                                            "column": 49
                                          }
                                        },
                                        "name": "i"
                                      }
                                    },
                                    {
                                      "type": "NewExpression",
                                      "start": 14405,
                                      "end": 14431,
                                      "loc": {
                                        "start": {
                                          "line": 382,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 382,
                                          "column": 77
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 14409,
                                        "end": 14422,
                                        "loc": {
                                          "start": {
                                            "line": 382,
                                            "column": 55
                                          },
                                          "end": {
                                            "line": 382,
                                            "column": 68
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 14409,
                                          "end": 14414,
                                          "loc": {
                                            "start": {
                                              "line": 382,
                                              "column": 55
                                            },
                                            "end": {
                                              "line": 382,
                                              "column": 60
                                            }
                                          },
                                          "name": "THREE"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 14415,
                                          "end": 14422,
                                          "loc": {
                                            "start": {
                                              "line": 382,
                                              "column": 61
                                            },
                                            "end": {
                                              "line": 382,
                                              "column": 68
                                            }
                                          },
                                          "name": "Vector3"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Literal",
                                          "start": 14423,
                                          "end": 14424,
                                          "loc": {
                                            "start": {
                                              "line": 382,
                                              "column": 69
                                            },
                                            "end": {
                                              "line": 382,
                                              "column": 70
                                            }
                                          },
                                          "value": 0,
                                          "rawValue": 0,
                                          "raw": "0"
                                        },
                                        {
                                          "type": "Literal",
                                          "start": 14426,
                                          "end": 14427,
                                          "loc": {
                                            "start": {
                                              "line": 382,
                                              "column": 72
                                            },
                                            "end": {
                                              "line": 382,
                                              "column": 73
                                            }
                                          },
                                          "value": 0,
                                          "rawValue": 0,
                                          "raw": "0"
                                        },
                                        {
                                          "type": "Literal",
                                          "start": 14429,
                                          "end": 14430,
                                          "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": 14466,
                          "end": 14489,
                          "loc": {
                            "start": {
                              "line": 385,
                              "column": 8
                            },
                            "end": {
                              "line": 385,
                              "column": 31
                            }
                          },
                          "range": [
                            14466,
                            14489
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 14498,
                      "end": 14744,
                      "loc": {
                        "start": {
                          "line": 386,
                          "column": 8
                        },
                        "end": {
                          "line": 390,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 14498,
                        "end": 14743,
                        "loc": {
                          "start": {
                            "line": 386,
                            "column": 8
                          },
                          "end": {
                            "line": 390,
                            "column": 10
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 14498,
                          "end": 14507,
                          "loc": {
                            "start": {
                              "line": 386,
                              "column": 8
                            },
                            "end": {
                              "line": 386,
                              "column": 17
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 14498,
                            "end": 14502,
                            "loc": {
                              "start": {
                                "line": 386,
                                "column": 8
                              },
                              "end": {
                                "line": 386,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14503,
                            "end": 14507,
                            "loc": {
                              "start": {
                                "line": 386,
                                "column": 13
                              },
                              "end": {
                                "line": 386,
                                "column": 17
                              }
                            },
                            "name": "mesh"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 14510,
                          "end": 14743,
                          "loc": {
                            "start": {
                              "line": 386,
                              "column": 20
                            },
                            "end": {
                              "line": 390,
                              "column": 10
                            }
                          },
                          "callee": {
                            "type": "Identifier",
                            "start": 14514,
                            "end": 14526,
                            "loc": {
                              "start": {
                                "line": 386,
                                "column": 24
                              },
                              "end": {
                                "line": 386,
                                "column": 36
                              }
                            },
                            "name": "InteractMesh"
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 14527,
                              "end": 14535,
                              "loc": {
                                "start": {
                                  "line": 386,
                                  "column": 37
                                },
                                "end": {
                                  "line": 386,
                                  "column": 45
                                }
                              },
                              "name": "geometry"
                            },
                            {
                              "type": "NewExpression",
                              "start": 14537,
                              "end": 14742,
                              "loc": {
                                "start": {
                                  "line": 386,
                                  "column": 47
                                },
                                "end": {
                                  "line": 390,
                                  "column": 9
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 14541,
                                "end": 14564,
                                "loc": {
                                  "start": {
                                    "line": 386,
                                    "column": 51
                                  },
                                  "end": {
                                    "line": 386,
                                    "column": 74
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 14541,
                                  "end": 14546,
                                  "loc": {
                                    "start": {
                                      "line": 386,
                                      "column": 51
                                    },
                                    "end": {
                                      "line": 386,
                                      "column": 56
                                    }
                                  },
                                  "name": "THREE"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 14547,
                                  "end": 14564,
                                  "loc": {
                                    "start": {
                                      "line": 386,
                                      "column": 57
                                    },
                                    "end": {
                                      "line": 386,
                                      "column": 74
                                    }
                                  },
                                  "name": "MeshBasicMaterial"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ObjectExpression",
                                  "start": 14578,
                                  "end": 14732,
                                  "loc": {
                                    "start": {
                                      "line": 387,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 389,
                                      "column": 13
                                    }
                                  },
                                  "properties": [
                                    {
                                      "type": "Property",
                                      "start": 14579,
                                      "end": 14607,
                                      "loc": {
                                        "start": {
                                          "line": 387,
                                          "column": 13
                                        },
                                        "end": {
                                          "line": 387,
                                          "column": 41
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 14579,
                                        "end": 14584,
                                        "loc": {
                                          "start": {
                                            "line": 387,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 387,
                                            "column": 18
                                          }
                                        },
                                        "name": "color"
                                      },
                                      "value": {
                                        "type": "CallExpression",
                                        "start": 14586,
                                        "end": 14607,
                                        "loc": {
                                          "start": {
                                            "line": 387,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 387,
                                            "column": 41
                                          }
                                        },
                                        "callee": {
                                          "type": "Identifier",
                                          "start": 14586,
                                          "end": 14594,
                                          "loc": {
                                            "start": {
                                              "line": 387,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 387,
                                              "column": 28
                                            }
                                          },
                                          "name": "getColor"
                                        },
                                        "arguments": [
                                          {
                                            "type": "ThisExpression",
                                            "start": 14595,
                                            "end": 14599,
                                            "loc": {
                                              "start": {
                                                "line": 387,
                                                "column": 29
                                              },
                                              "end": {
                                                "line": 387,
                                                "column": 33
                                              }
                                            }
                                          },
                                          {
                                            "type": "Literal",
                                            "start": 14601,
                                            "end": 14606,
                                            "loc": {
                                              "start": {
                                                "line": 387,
                                                "column": 35
                                              },
                                              "end": {
                                                "line": 387,
                                                "column": 40
                                              }
                                            },
                                            "value": false,
                                            "rawValue": false,
                                            "raw": "false"
                                          }
                                        ]
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 14609,
                                      "end": 14631,
                                      "loc": {
                                        "start": {
                                          "line": 387,
                                          "column": 43
                                        },
                                        "end": {
                                          "line": 387,
                                          "column": 65
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 14609,
                                        "end": 14613,
                                        "loc": {
                                          "start": {
                                            "line": 387,
                                            "column": 43
                                          },
                                          "end": {
                                            "line": 387,
                                            "column": 47
                                          }
                                        },
                                        "name": "side"
                                      },
                                      "value": {
                                        "type": "MemberExpression",
                                        "start": 14615,
                                        "end": 14631,
                                        "loc": {
                                          "start": {
                                            "line": 387,
                                            "column": 49
                                          },
                                          "end": {
                                            "line": 387,
                                            "column": 65
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 14615,
                                          "end": 14620,
                                          "loc": {
                                            "start": {
                                              "line": 387,
                                              "column": 49
                                            },
                                            "end": {
                                              "line": 387,
                                              "column": 54
                                            }
                                          },
                                          "name": "THREE"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 14621,
                                          "end": 14631,
                                          "loc": {
                                            "start": {
                                              "line": 387,
                                              "column": 55
                                            },
                                            "end": {
                                              "line": 387,
                                              "column": 65
                                            }
                                          },
                                          "name": "DoubleSide"
                                        },
                                        "computed": false
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 14649,
                                      "end": 14668,
                                      "loc": {
                                        "start": {
                                          "line": 388,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 388,
                                          "column": 35
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 14649,
                                        "end": 14662,
                                        "loc": {
                                          "start": {
                                            "line": 388,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 388,
                                            "column": 29
                                          }
                                        },
                                        "name": "polygonOffset"
                                      },
                                      "value": {
                                        "type": "Literal",
                                        "start": 14664,
                                        "end": 14668,
                                        "loc": {
                                          "start": {
                                            "line": 388,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 388,
                                            "column": 35
                                          }
                                        },
                                        "value": true,
                                        "rawValue": true,
                                        "raw": "true"
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 14670,
                                      "end": 14693,
                                      "loc": {
                                        "start": {
                                          "line": 388,
                                          "column": 37
                                        },
                                        "end": {
                                          "line": 388,
                                          "column": 60
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 14670,
                                        "end": 14689,
                                        "loc": {
                                          "start": {
                                            "line": 388,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 388,
                                            "column": 56
                                          }
                                        },
                                        "name": "polygonOffsetFactor"
                                      },
                                      "value": {
                                        "type": "UnaryExpression",
                                        "start": 14691,
                                        "end": 14693,
                                        "loc": {
                                          "start": {
                                            "line": 388,
                                            "column": 58
                                          },
                                          "end": {
                                            "line": 388,
                                            "column": 60
                                          }
                                        },
                                        "operator": "-",
                                        "prefix": true,
                                        "argument": {
                                          "type": "Literal",
                                          "start": 14692,
                                          "end": 14693,
                                          "loc": {
                                            "start": {
                                              "line": 388,
                                              "column": 59
                                            },
                                            "end": {
                                              "line": 388,
                                              "column": 60
                                            }
                                          },
                                          "value": 1,
                                          "rawValue": 1,
                                          "raw": "1"
                                        }
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 14695,
                                      "end": 14718,
                                      "loc": {
                                        "start": {
                                          "line": 388,
                                          "column": 62
                                        },
                                        "end": {
                                          "line": 388,
                                          "column": 85
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 14695,
                                        "end": 14713,
                                        "loc": {
                                          "start": {
                                            "line": 388,
                                            "column": 62
                                          },
                                          "end": {
                                            "line": 388,
                                            "column": 80
                                          }
                                        },
                                        "name": "polygonOffsetUnits"
                                      },
                                      "value": {
                                        "type": "UnaryExpression",
                                        "start": 14716,
                                        "end": 14718,
                                        "loc": {
                                          "start": {
                                            "line": 388,
                                            "column": 83
                                          },
                                          "end": {
                                            "line": 388,
                                            "column": 85
                                          }
                                        },
                                        "operator": "-",
                                        "prefix": true,
                                        "argument": {
                                          "type": "Literal",
                                          "start": 14717,
                                          "end": 14718,
                                          "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": 14466,
                          "end": 14489,
                          "loc": {
                            "start": {
                              "line": 385,
                              "column": 8
                            },
                            "end": {
                              "line": 385,
                              "column": 31
                            }
                          },
                          "range": [
                            14466,
                            14489
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 14753,
                      "end": 14779,
                      "loc": {
                        "start": {
                          "line": 391,
                          "column": 8
                        },
                        "end": {
                          "line": 391,
                          "column": 34
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 14753,
                        "end": 14778,
                        "loc": {
                          "start": {
                            "line": 391,
                            "column": 8
                          },
                          "end": {
                            "line": 391,
                            "column": 33
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 14753,
                          "end": 14766,
                          "loc": {
                            "start": {
                              "line": 391,
                              "column": 8
                            },
                            "end": {
                              "line": 391,
                              "column": 21
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 14753,
                            "end": 14757,
                            "loc": {
                              "start": {
                                "line": 391,
                                "column": 8
                              },
                              "end": {
                                "line": 391,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14758,
                            "end": 14766,
                            "loc": {
                              "start": {
                                "line": 391,
                                "column": 13
                              },
                              "end": {
                                "line": 391,
                                "column": 21
                              }
                            },
                            "name": "interact"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 14769,
                          "end": 14778,
                          "loc": {
                            "start": {
                              "line": 391,
                              "column": 24
                            },
                            "end": {
                              "line": 391,
                              "column": 33
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 14769,
                            "end": 14773,
                            "loc": {
                              "start": {
                                "line": 391,
                                "column": 24
                              },
                              "end": {
                                "line": 391,
                                "column": 28
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14774,
                            "end": 14778,
                            "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": 14780,
                          "end": 14821,
                          "loc": {
                            "start": {
                              "line": 391,
                              "column": 35
                            },
                            "end": {
                              "line": 391,
                              "column": 76
                            }
                          },
                          "range": [
                            14780,
                            14821
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 14831,
                      "end": 14872,
                      "loc": {
                        "start": {
                          "line": 393,
                          "column": 8
                        },
                        "end": {
                          "line": 393,
                          "column": 49
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 14831,
                        "end": 14871,
                        "loc": {
                          "start": {
                            "line": 393,
                            "column": 8
                          },
                          "end": {
                            "line": 393,
                            "column": 48
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 14831,
                          "end": 14842,
                          "loc": {
                            "start": {
                              "line": 393,
                              "column": 8
                            },
                            "end": {
                              "line": 393,
                              "column": 19
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 14831,
                            "end": 14835,
                            "loc": {
                              "start": {
                                "line": 393,
                                "column": 8
                              },
                              "end": {
                                "line": 393,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14836,
                            "end": 14842,
                            "loc": {
                              "start": {
                                "line": 393,
                                "column": 13
                              },
                              "end": {
                                "line": 393,
                                "column": 19
                              }
                            },
                            "name": "points"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "ArrayExpression",
                          "start": 14845,
                          "end": 14871,
                          "loc": {
                            "start": {
                              "line": 393,
                              "column": 22
                            },
                            "end": {
                              "line": 393,
                              "column": 48
                            }
                          },
                          "elements": [
                            {
                              "type": "NewExpression",
                              "start": 14846,
                              "end": 14857,
                              "loc": {
                                "start": {
                                  "line": 393,
                                  "column": 23
                                },
                                "end": {
                                  "line": 393,
                                  "column": 34
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 14850,
                                "end": 14855,
                                "loc": {
                                  "start": {
                                    "line": 393,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 393,
                                    "column": 32
                                  }
                                },
                                "name": "Point"
                              },
                              "arguments": []
                            },
                            {
                              "type": "NewExpression",
                              "start": 14859,
                              "end": 14870,
                              "loc": {
                                "start": {
                                  "line": 393,
                                  "column": 36
                                },
                                "end": {
                                  "line": 393,
                                  "column": 47
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 14863,
                                "end": 14868,
                                "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": 14780,
                          "end": 14821,
                          "loc": {
                            "start": {
                              "line": 391,
                              "column": 35
                            },
                            "end": {
                              "line": 391,
                              "column": 76
                            }
                          },
                          "range": [
                            14780,
                            14821
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 14881,
                      "end": 14912,
                      "loc": {
                        "start": {
                          "line": 394,
                          "column": 8
                        },
                        "end": {
                          "line": 394,
                          "column": 39
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 14881,
                        "end": 14911,
                        "loc": {
                          "start": {
                            "line": 394,
                            "column": 8
                          },
                          "end": {
                            "line": 394,
                            "column": 38
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 14881,
                          "end": 14897,
                          "loc": {
                            "start": {
                              "line": 394,
                              "column": 8
                            },
                            "end": {
                              "line": 394,
                              "column": 24
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 14881,
                            "end": 14885,
                            "loc": {
                              "start": {
                                "line": 394,
                                "column": 8
                              },
                              "end": {
                                "line": 394,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14886,
                            "end": 14897,
                            "loc": {
                              "start": {
                                "line": 394,
                                "column": 13
                              },
                              "end": {
                                "line": 394,
                                "column": 24
                              }
                            },
                            "name": "centerPoint"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 14900,
                          "end": 14911,
                          "loc": {
                            "start": {
                              "line": 394,
                              "column": 27
                            },
                            "end": {
                              "line": 394,
                              "column": 38
                            }
                          },
                          "callee": {
                            "type": "Identifier",
                            "start": 14904,
                            "end": 14909,
                            "loc": {
                              "start": {
                                "line": 394,
                                "column": 31
                              },
                              "end": {
                                "line": 394,
                                "column": 36
                              }
                            },
                            "name": "Point"
                          },
                          "arguments": []
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 14921,
                      "end": 14956,
                      "loc": {
                        "start": {
                          "line": 395,
                          "column": 8
                        },
                        "end": {
                          "line": 395,
                          "column": 43
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 14921,
                        "end": 14955,
                        "loc": {
                          "start": {
                            "line": 395,
                            "column": 8
                          },
                          "end": {
                            "line": 395,
                            "column": 42
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 14921,
                          "end": 14940,
                          "loc": {
                            "start": {
                              "line": 395,
                              "column": 8
                            },
                            "end": {
                              "line": 395,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 14921,
                            "end": 14935,
                            "loc": {
                              "start": {
                                "line": 395,
                                "column": 8
                              },
                              "end": {
                                "line": 395,
                                "column": 22
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 14921,
                              "end": 14932,
                              "loc": {
                                "start": {
                                  "line": 395,
                                  "column": 8
                                },
                                "end": {
                                  "line": 395,
                                  "column": 19
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 14921,
                                "end": 14925,
                                "loc": {
                                  "start": {
                                    "line": 395,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 395,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 14926,
                                "end": 14932,
                                "loc": {
                                  "start": {
                                    "line": 395,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 395,
                                    "column": 19
                                  }
                                },
                                "name": "points"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Literal",
                              "start": 14933,
                              "end": 14934,
                              "loc": {
                                "start": {
                                  "line": 395,
                                  "column": 20
                                },
                                "end": {
                                  "line": 395,
                                  "column": 21
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            },
                            "computed": true
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14936,
                            "end": 14940,
                            "loc": {
                              "start": {
                                "line": 395,
                                "column": 23
                              },
                              "end": {
                                "line": 395,
                                "column": 27
                              }
                            },
                            "name": "name"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 14943,
                          "end": 14955,
                          "loc": {
                            "start": {
                              "line": 395,
                              "column": 30
                            },
                            "end": {
                              "line": 395,
                              "column": 42
                            }
                          },
                          "value": "startPoint",
                          "rawValue": "startPoint",
                          "raw": "'startPoint'"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 14965,
                      "end": 14998,
                      "loc": {
                        "start": {
                          "line": 396,
                          "column": 8
                        },
                        "end": {
                          "line": 396,
                          "column": 41
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 14965,
                        "end": 14997,
                        "loc": {
                          "start": {
                            "line": 396,
                            "column": 8
                          },
                          "end": {
                            "line": 396,
                            "column": 40
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 14965,
                          "end": 14984,
                          "loc": {
                            "start": {
                              "line": 396,
                              "column": 8
                            },
                            "end": {
                              "line": 396,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 14965,
                            "end": 14979,
                            "loc": {
                              "start": {
                                "line": 396,
                                "column": 8
                              },
                              "end": {
                                "line": 396,
                                "column": 22
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 14965,
                              "end": 14976,
                              "loc": {
                                "start": {
                                  "line": 396,
                                  "column": 8
                                },
                                "end": {
                                  "line": 396,
                                  "column": 19
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 14965,
                                "end": 14969,
                                "loc": {
                                  "start": {
                                    "line": 396,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 396,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 14970,
                                "end": 14976,
                                "loc": {
                                  "start": {
                                    "line": 396,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 396,
                                    "column": 19
                                  }
                                },
                                "name": "points"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Literal",
                              "start": 14977,
                              "end": 14978,
                              "loc": {
                                "start": {
                                  "line": 396,
                                  "column": 20
                                },
                                "end": {
                                  "line": 396,
                                  "column": 21
                                }
                              },
                              "value": 1,
                              "rawValue": 1,
                              "raw": "1"
                            },
                            "computed": true
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14980,
                            "end": 14984,
                            "loc": {
                              "start": {
                                "line": 396,
                                "column": 23
                              },
                              "end": {
                                "line": 396,
                                "column": 27
                              }
                            },
                            "name": "name"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 14987,
                          "end": 14997,
                          "loc": {
                            "start": {
                              "line": 396,
                              "column": 30
                            },
                            "end": {
                              "line": 396,
                              "column": 40
                            }
                          },
                          "value": "endPoint",
                          "rawValue": "endPoint",
                          "raw": "'endPoint'"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 15007,
                      "end": 15040,
                      "loc": {
                        "start": {
                          "line": 397,
                          "column": 8
                        },
                        "end": {
                          "line": 397,
                          "column": 41
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 15007,
                        "end": 15039,
                        "loc": {
                          "start": {
                            "line": 397,
                            "column": 8
                          },
                          "end": {
                            "line": 397,
                            "column": 40
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 15007,
                          "end": 15028,
                          "loc": {
                            "start": {
                              "line": 397,
                              "column": 8
                            },
                            "end": {
                              "line": 397,
                              "column": 29
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 15007,
                            "end": 15023,
                            "loc": {
                              "start": {
                                "line": 397,
                                "column": 8
                              },
                              "end": {
                                "line": 397,
                                "column": 24
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 15007,
                              "end": 15011,
                              "loc": {
                                "start": {
                                  "line": 397,
                                  "column": 8
                                },
                                "end": {
                                  "line": 397,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 15012,
                              "end": 15023,
                              "loc": {
                                "start": {
                                  "line": 397,
                                  "column": 13
                                },
                                "end": {
                                  "line": 397,
                                  "column": 24
                                }
                              },
                              "name": "centerPoint"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 15024,
                            "end": 15028,
                            "loc": {
                              "start": {
                                "line": 397,
                                "column": 25
                              },
                              "end": {
                                "line": 397,
                                "column": 29
                              }
                            },
                            "name": "name"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 15031,
                          "end": 15039,
                          "loc": {
                            "start": {
                              "line": 397,
                              "column": 32
                            },
                            "end": {
                              "line": 397,
                              "column": 40
                            }
                          },
                          "value": "center",
                          "rawValue": "center",
                          "raw": "'center'"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 15049,
                      "end": 15072,
                      "loc": {
                        "start": {
                          "line": 398,
                          "column": 8
                        },
                        "end": {
                          "line": 398,
                          "column": 31
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 15049,
                        "end": 15071,
                        "loc": {
                          "start": {
                            "line": 398,
                            "column": 8
                          },
                          "end": {
                            "line": 398,
                            "column": 30
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 15049,
                          "end": 15063,
                          "loc": {
                            "start": {
                              "line": 398,
                              "column": 8
                            },
                            "end": {
                              "line": 398,
                              "column": 22
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 15049,
                            "end": 15053,
                            "loc": {
                              "start": {
                                "line": 398,
                                "column": 8
                              },
                              "end": {
                                "line": 398,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 15054,
                            "end": 15063,
                            "loc": {
                              "start": {
                                "line": 398,
                                "column": 13
                              },
                              "end": {
                                "line": 398,
                                "column": 22
                              }
                            },
                            "name": "clockwise"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 15066,
                          "end": 15071,
                          "loc": {
                            "start": {
                              "line": 398,
                              "column": 25
                            },
                            "end": {
                              "line": 398,
                              "column": 30
                            }
                          },
                          "value": false,
                          "rawValue": false,
                          "raw": "false"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 15081,
                      "end": 15269,
                      "loc": {
                        "start": {
                          "line": 399,
                          "column": 8
                        },
                        "end": {
                          "line": 402,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 15081,
                        "end": 15268,
                        "loc": {
                          "start": {
                            "line": 399,
                            "column": 8
                          },
                          "end": {
                            "line": 402,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 15081,
                          "end": 15125,
                          "loc": {
                            "start": {
                              "line": 399,
                              "column": 8
                            },
                            "end": {
                              "line": 399,
                              "column": 52
                            }
                          },
                          "object": {
                            "type": "CallExpression",
                            "start": 15081,
                            "end": 15117,
                            "loc": {
                              "start": {
                                "line": 399,
                                "column": 8
                              },
                              "end": {
                                "line": 399,
                                "column": 44
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 15081,
                              "end": 15099,
                              "loc": {
                                "start": {
                                  "line": 399,
                                  "column": 8
                                },
                                "end": {
                                  "line": 399,
                                  "column": 26
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 15081,
                                "end": 15092,
                                "loc": {
                                  "start": {
                                    "line": 399,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 399,
                                    "column": 19
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 15081,
                                  "end": 15085,
                                  "loc": {
                                    "start": {
                                      "line": 399,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 399,
                                      "column": 12
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 15086,
                                  "end": 15092,
                                  "loc": {
                                    "start": {
                                      "line": 399,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 399,
                                      "column": 19
                                    }
                                  },
                                  "name": "points"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 15093,
                                "end": 15099,
                                "loc": {
                                  "start": {
                                    "line": 399,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 399,
                                    "column": 26
                                  }
                                },
                                "name": "concat"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 15100,
                                "end": 15116,
                                "loc": {
                                  "start": {
                                    "line": 399,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 399,
                                    "column": 43
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 15100,
                                  "end": 15104,
                                  "loc": {
                                    "start": {
                                      "line": 399,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 399,
                                      "column": 31
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 15105,
                                  "end": 15116,
                                  "loc": {
                                    "start": {
                                      "line": 399,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 399,
                                      "column": 43
                                    }
                                  },
                                  "name": "centerPoint"
                                },
                                "computed": false
                              }
                            ]
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 15118,
                            "end": 15125,
                            "loc": {
                              "start": {
                                "line": 399,
                                "column": 45
                              },
                              "end": {
                                "line": 399,
                                "column": 52
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 15126,
                            "end": 15267,
                            "loc": {
                              "start": {
                                "line": 399,
                                "column": 53
                              },
                              "end": {
                                "line": 402,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 15126,
                                "end": 15131,
                                "loc": {
                                  "start": {
                                    "line": 399,
                                    "column": 53
                                  },
                                  "end": {
                                    "line": 399,
                                    "column": 58
                                  }
                                },
                                "name": "point"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 15135,
                              "end": 15267,
                              "loc": {
                                "start": {
                                  "line": 399,
                                  "column": 62
                                },
                                "end": {
                                  "line": 402,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 15149,
                                  "end": 15199,
                                  "loc": {
                                    "start": {
                                      "line": 400,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 400,
                                      "column": 62
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 15149,
                                    "end": 15198,
                                    "loc": {
                                      "start": {
                                        "line": 400,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 400,
                                        "column": 61
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 15149,
                                      "end": 15157,
                                      "loc": {
                                        "start": {
                                          "line": 400,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 400,
                                          "column": 20
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 15149,
                                        "end": 15154,
                                        "loc": {
                                          "start": {
                                            "line": 400,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 400,
                                            "column": 17
                                          }
                                        },
                                        "name": "point"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 15155,
                                        "end": 15157,
                                        "loc": {
                                          "start": {
                                            "line": 400,
                                            "column": 18
                                          },
                                          "end": {
                                            "line": 400,
                                            "column": 20
                                          }
                                        },
                                        "name": "on"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Literal",
                                        "start": 15158,
                                        "end": 15165,
                                        "loc": {
                                          "start": {
                                            "line": 400,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 400,
                                            "column": 28
                                          }
                                        },
                                        "value": "moved",
                                        "rawValue": "moved",
                                        "raw": "'moved'"
                                      },
                                      {
                                        "type": "CallExpression",
                                        "start": 15167,
                                        "end": 15197,
                                        "loc": {
                                          "start": {
                                            "line": 400,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 400,
                                            "column": 60
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 15167,
                                          "end": 15191,
                                          "loc": {
                                            "start": {
                                              "line": 400,
                                              "column": 30
                                            },
                                            "end": {
                                              "line": 400,
                                              "column": 54
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 15167,
                                            "end": 15186,
                                            "loc": {
                                              "start": {
                                                "line": 400,
                                                "column": 30
                                              },
                                              "end": {
                                                "line": 400,
                                                "column": 49
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 15167,
                                              "end": 15171,
                                              "loc": {
                                                "start": {
                                                  "line": 400,
                                                  "column": 30
                                                },
                                                "end": {
                                                  "line": 400,
                                                  "column": 34
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 15172,
                                              "end": 15186,
                                              "loc": {
                                                "start": {
                                                  "line": 400,
                                                  "column": 35
                                                },
                                                "end": {
                                                  "line": 400,
                                                  "column": 49
                                                }
                                              },
                                              "name": "updateGeometry"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 15187,
                                            "end": 15191,
                                            "loc": {
                                              "start": {
                                                "line": 400,
                                                "column": 50
                                              },
                                              "end": {
                                                "line": 400,
                                                "column": 54
                                              }
                                            },
                                            "name": "bind"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "ThisExpression",
                                            "start": 15192,
                                            "end": 15196,
                                            "loc": {
                                              "start": {
                                                "line": 400,
                                                "column": 55
                                              },
                                              "end": {
                                                "line": 400,
                                                "column": 59
                                              }
                                            }
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 15212,
                                  "end": 15257,
                                  "loc": {
                                    "start": {
                                      "line": 401,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 401,
                                      "column": 57
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 15212,
                                    "end": 15256,
                                    "loc": {
                                      "start": {
                                        "line": 401,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 401,
                                        "column": 56
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 15212,
                                      "end": 15220,
                                      "loc": {
                                        "start": {
                                          "line": 401,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 401,
                                          "column": 20
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 15212,
                                        "end": 15217,
                                        "loc": {
                                          "start": {
                                            "line": 401,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 401,
                                            "column": 17
                                          }
                                        },
                                        "name": "point"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 15218,
                                        "end": 15220,
                                        "loc": {
                                          "start": {
                                            "line": 401,
                                            "column": 18
                                          },
                                          "end": {
                                            "line": 401,
                                            "column": 20
                                          }
                                        },
                                        "name": "on"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Literal",
                                        "start": 15221,
                                        "end": 15230,
                                        "loc": {
                                          "start": {
                                            "line": 401,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 401,
                                            "column": 30
                                          }
                                        },
                                        "value": "dragend",
                                        "rawValue": "dragend",
                                        "raw": "'dragend'"
                                      },
                                      {
                                        "type": "CallExpression",
                                        "start": 15232,
                                        "end": 15255,
                                        "loc": {
                                          "start": {
                                            "line": 401,
                                            "column": 32
                                          },
                                          "end": {
                                            "line": 401,
                                            "column": 55
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 15232,
                                          "end": 15249,
                                          "loc": {
                                            "start": {
                                              "line": 401,
                                              "column": 32
                                            },
                                            "end": {
                                              "line": 401,
                                              "column": 49
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 15232,
                                            "end": 15244,
                                            "loc": {
                                              "start": {
                                                "line": 401,
                                                "column": 32
                                              },
                                              "end": {
                                                "line": 401,
                                                "column": 44
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 15232,
                                              "end": 15236,
                                              "loc": {
                                                "start": {
                                                  "line": 401,
                                                  "column": 32
                                                },
                                                "end": {
                                                  "line": 401,
                                                  "column": 36
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 15237,
                                              "end": 15244,
                                              "loc": {
                                                "start": {
                                                  "line": 401,
                                                  "column": 37
                                                },
                                                "end": {
                                                  "line": 401,
                                                  "column": 44
                                                }
                                              },
                                              "name": "endDrag"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 15245,
                                            "end": 15249,
                                            "loc": {
                                              "start": {
                                                "line": 401,
                                                "column": 45
                                              },
                                              "end": {
                                                "line": 401,
                                                "column": 49
                                              }
                                            },
                                            "name": "bind"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "ThisExpression",
                                            "start": 15250,
                                            "end": 15254,
                                            "loc": {
                                              "start": {
                                                "line": 401,
                                                "column": 50
                                              },
                                              "end": {
                                                "line": 401,
                                                "column": 54
                                              }
                                            }
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                }
                              ]
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 15279,
                      "end": 15307,
                      "loc": {
                        "start": {
                          "line": 404,
                          "column": 8
                        },
                        "end": {
                          "line": 404,
                          "column": 36
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 15279,
                        "end": 15306,
                        "loc": {
                          "start": {
                            "line": 404,
                            "column": 8
                          },
                          "end": {
                            "line": 404,
                            "column": 35
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 15279,
                          "end": 15289,
                          "loc": {
                            "start": {
                              "line": 404,
                              "column": 8
                            },
                            "end": {
                              "line": 404,
                              "column": 18
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 15279,
                            "end": 15283,
                            "loc": {
                              "start": {
                                "line": 404,
                                "column": 8
                              },
                              "end": {
                                "line": 404,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 15284,
                            "end": 15289,
                            "loc": {
                              "start": {
                                "line": 404,
                                "column": 13
                              },
                              "end": {
                                "line": 404,
                                "column": 18
                              }
                            },
                            "name": "width"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 15292,
                          "end": 15306,
                          "loc": {
                            "start": {
                              "line": 404,
                              "column": 21
                            },
                            "end": {
                              "line": 404,
                              "column": 35
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 15292,
                            "end": 15296,
                            "loc": {
                              "start": {
                                "line": 404,
                                "column": 21
                              },
                              "end": {
                                "line": 404,
                                "column": 25
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 15297,
                            "end": 15306,
                            "loc": {
                              "start": {
                                "line": 404,
                                "column": 26
                              },
                              "end": {
                                "line": 404,
                                "column": 35
                              }
                            },
                            "name": "thickness"
                          },
                          "computed": false
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 15316,
                      "end": 15413,
                      "loc": {
                        "start": {
                          "line": 405,
                          "column": 8
                        },
                        "end": {
                          "line": 405,
                          "column": 105
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 15316,
                        "end": 15412,
                        "loc": {
                          "start": {
                            "line": 405,
                            "column": 8
                          },
                          "end": {
                            "line": 405,
                            "column": 104
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 15316,
                          "end": 15324,
                          "loc": {
                            "start": {
                              "line": 405,
                              "column": 8
                            },
                            "end": {
                              "line": 405,
                              "column": 16
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 15316,
                            "end": 15320,
                            "loc": {
                              "start": {
                                "line": 405,
                                "column": 8
                              },
                              "end": {
                                "line": 405,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 15321,
                            "end": 15324,
                            "loc": {
                              "start": {
                                "line": 405,
                                "column": 13
                              },
                              "end": {
                                "line": 405,
                                "column": 16
                              }
                            },
                            "name": "add"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 15325,
                            "end": 15339,
                            "loc": {
                              "start": {
                                "line": 405,
                                "column": 17
                              },
                              "end": {
                                "line": 405,
                                "column": 31
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 15325,
                              "end": 15336,
                              "loc": {
                                "start": {
                                  "line": 405,
                                  "column": 17
                                },
                                "end": {
                                  "line": 405,
                                  "column": 28
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 15325,
                                "end": 15329,
                                "loc": {
                                  "start": {
                                    "line": 405,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 405,
                                    "column": 21
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 15330,
                                "end": 15336,
                                "loc": {
                                  "start": {
                                    "line": 405,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 405,
                                    "column": 28
                                  }
                                },
                                "name": "points"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Literal",
                              "start": 15337,
                              "end": 15338,
                              "loc": {
                                "start": {
                                  "line": 405,
                                  "column": 29
                                },
                                "end": {
                                  "line": 405,
                                  "column": 30
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            },
                            "computed": true
                          },
                          {
                            "type": "MemberExpression",
                            "start": 15341,
                            "end": 15355,
                            "loc": {
                              "start": {
                                "line": 405,
                                "column": 33
                              },
                              "end": {
                                "line": 405,
                                "column": 47
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 15341,
                              "end": 15352,
                              "loc": {
                                "start": {
                                  "line": 405,
                                  "column": 33
                                },
                                "end": {
                                  "line": 405,
                                  "column": 44
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 15341,
                                "end": 15345,
                                "loc": {
                                  "start": {
                                    "line": 405,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 405,
                                    "column": 37
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 15346,
                                "end": 15352,
                                "loc": {
                                  "start": {
                                    "line": 405,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 405,
                                    "column": 44
                                  }
                                },
                                "name": "points"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Literal",
                              "start": 15353,
                              "end": 15354,
                              "loc": {
                                "start": {
                                  "line": 405,
                                  "column": 45
                                },
                                "end": {
                                  "line": 405,
                                  "column": 46
                                }
                              },
                              "value": 1,
                              "rawValue": 1,
                              "raw": "1"
                            },
                            "computed": true
                          },
                          {
                            "type": "MemberExpression",
                            "start": 15357,
                            "end": 15373,
                            "loc": {
                              "start": {
                                "line": 405,
                                "column": 49
                              },
                              "end": {
                                "line": 405,
                                "column": 65
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 15357,
                              "end": 15361,
                              "loc": {
                                "start": {
                                  "line": 405,
                                  "column": 49
                                },
                                "end": {
                                  "line": 405,
                                  "column": 53
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 15362,
                              "end": 15373,
                              "loc": {
                                "start": {
                                  "line": 405,
                                  "column": 54
                                },
                                "end": {
                                  "line": 405,
                                  "column": 65
                                }
                              },
                              "name": "centerPoint"
                            },
                            "computed": false
                          },
                          {
                            "type": "MemberExpression",
                            "start": 15375,
                            "end": 15384,
                            "loc": {
                              "start": {
                                "line": 405,
                                "column": 67
                              },
                              "end": {
                                "line": 405,
                                "column": 76
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 15375,
                              "end": 15379,
                              "loc": {
                                "start": {
                                  "line": 405,
                                  "column": 67
                                },
                                "end": {
                                  "line": 405,
                                  "column": 71
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 15380,
                              "end": 15384,
                              "loc": {
                                "start": {
                                  "line": 405,
                                  "column": 72
                                },
                                "end": {
                                  "line": 405,
                                  "column": 76
                                }
                              },
                              "name": "mesh"
                            },
                            "computed": false
                          },
                          {
                            "type": "MemberExpression",
                            "start": 15386,
                            "end": 15411,
                            "loc": {
                              "start": {
                                "line": 405,
                                "column": 78
                              },
                              "end": {
                                "line": 405,
                                "column": 103
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 15386,
                              "end": 15390,
                              "loc": {
                                "start": {
                                  "line": 405,
                                  "column": 78
                                },
                                "end": {
                                  "line": 405,
                                  "column": 82
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 15391,
                              "end": 15411,
                              "loc": {
                                "start": {
                                  "line": 405,
                                  "column": 83
                                },
                                "end": {
                                  "line": 405,
                                  "column": 103
                                }
                              },
                              "name": "constraintsSubstrate"
                            },
                            "computed": false
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 15422,
                      "end": 15444,
                      "loc": {
                        "start": {
                          "line": 406,
                          "column": 8
                        },
                        "end": {
                          "line": 406,
                          "column": 30
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 15422,
                        "end": 15443,
                        "loc": {
                          "start": {
                            "line": 406,
                            "column": 8
                          },
                          "end": {
                            "line": 406,
                            "column": 29
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 15422,
                          "end": 15441,
                          "loc": {
                            "start": {
                              "line": 406,
                              "column": 8
                            },
                            "end": {
                              "line": 406,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 15422,
                            "end": 15426,
                            "loc": {
                              "start": {
                                "line": 406,
                                "column": 8
                              },
                              "end": {
                                "line": 406,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 15427,
                            "end": 15441,
                            "loc": {
                              "start": {
                                "line": 406,
                                "column": 13
                              },
                              "end": {
                                "line": 406,
                                "column": 27
                              }
                            },
                            "name": "updateGeometry"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 15456,
              "end": 15721,
              "loc": {
                "start": {
                  "line": 409,
                  "column": 4
                },
                "end": {
                  "line": 413,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 15456,
                "end": 15473,
                "loc": {
                  "start": {
                    "line": 409,
                    "column": 4
                  },
                  "end": {
                    "line": 409,
                    "column": 21
                  }
                },
                "name": "getMiddlePosition"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 15473,
                "end": 15721,
                "loc": {
                  "start": {
                    "line": 409,
                    "column": 21
                  },
                  "end": {
                    "line": 413,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 15476,
                  "end": 15721,
                  "loc": {
                    "start": {
                      "line": 409,
                      "column": 24
                    },
                    "end": {
                      "line": 413,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 15533,
                      "end": 15585,
                      "loc": {
                        "start": {
                          "line": 411,
                          "column": 8
                        },
                        "end": {
                          "line": 411,
                          "column": 60
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 15537,
                          "end": 15584,
                          "loc": {
                            "start": {
                              "line": 411,
                              "column": 12
                            },
                            "end": {
                              "line": 411,
                              "column": 59
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 15537,
                            "end": 15542,
                            "loc": {
                              "start": {
                                "line": 411,
                                "column": 12
                              },
                              "end": {
                                "line": 411,
                                "column": 17
                              }
                            },
                            "name": "angle",
                            "leadingComments": null
                          },
                          "init": {
                            "type": "BinaryExpression",
                            "start": 15545,
                            "end": 15584,
                            "loc": {
                              "start": {
                                "line": 411,
                                "column": 20
                              },
                              "end": {
                                "line": 411,
                                "column": 59
                              }
                            },
                            "left": {
                              "type": "BinaryExpression",
                              "start": 15546,
                              "end": 15577,
                              "loc": {
                                "start": {
                                  "line": 411,
                                  "column": 21
                                },
                                "end": {
                                  "line": 411,
                                  "column": 52
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 15546,
                                "end": 15561,
                                "loc": {
                                  "start": {
                                    "line": 411,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 411,
                                    "column": 36
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 15546,
                                  "end": 15550,
                                  "loc": {
                                    "start": {
                                      "line": 411,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 411,
                                      "column": 25
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 15551,
                                  "end": 15561,
                                  "loc": {
                                    "start": {
                                      "line": 411,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 411,
                                      "column": 36
                                    }
                                  },
                                  "name": "angleStart"
                                },
                                "computed": false
                              },
                              "operator": "+",
                              "right": {
                                "type": "MemberExpression",
                                "start": 15564,
                                "end": 15577,
                                "loc": {
                                  "start": {
                                    "line": 411,
                                    "column": 39
                                  },
                                  "end": {
                                    "line": 411,
                                    "column": 52
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 15564,
                                  "end": 15568,
                                  "loc": {
                                    "start": {
                                      "line": 411,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 411,
                                      "column": 43
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 15569,
                                  "end": 15577,
                                  "loc": {
                                    "start": {
                                      "line": 411,
                                      "column": 44
                                    },
                                    "end": {
                                      "line": 411,
                                      "column": 52
                                    }
                                  },
                                  "name": "angleEnd"
                                },
                                "computed": false
                              },
                              "parenthesizedExpression": true
                            },
                            "operator": "*",
                            "right": {
                              "type": "Literal",
                              "start": 15581,
                              "end": 15584,
                              "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": 15486,
                          "end": 15524,
                          "loc": {
                            "start": {
                              "line": 410,
                              "column": 8
                            },
                            "end": {
                              "line": 410,
                              "column": 46
                            }
                          },
                          "range": [
                            15486,
                            15524
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 15594,
                      "end": 15715,
                      "loc": {
                        "start": {
                          "line": 412,
                          "column": 8
                        },
                        "end": {
                          "line": 412,
                          "column": 129
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 15601,
                        "end": 15714,
                        "loc": {
                          "start": {
                            "line": 412,
                            "column": 15
                          },
                          "end": {
                            "line": 412,
                            "column": 128
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 15601,
                          "end": 15687,
                          "loc": {
                            "start": {
                              "line": 412,
                              "column": 15
                            },
                            "end": {
                              "line": 412,
                              "column": 101
                            }
                          },
                          "object": {
                            "type": "CallExpression",
                            "start": 15601,
                            "end": 15683,
                            "loc": {
                              "start": {
                                "line": 412,
                                "column": 15
                              },
                              "end": {
                                "line": 412,
                                "column": 97
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 15601,
                              "end": 15670,
                              "loc": {
                                "start": {
                                  "line": 412,
                                  "column": 15
                                },
                                "end": {
                                  "line": 412,
                                  "column": 84
                                }
                              },
                              "object": {
                                "type": "NewExpression",
                                "start": 15601,
                                "end": 15655,
                                "loc": {
                                  "start": {
                                    "line": 412,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 412,
                                    "column": 69
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 15605,
                                  "end": 15618,
                                  "loc": {
                                    "start": {
                                      "line": 412,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 412,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 15605,
                                    "end": 15610,
                                    "loc": {
                                      "start": {
                                        "line": 412,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 412,
                                        "column": 24
                                      }
                                    },
                                    "name": "THREE"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 15611,
                                    "end": 15618,
                                    "loc": {
                                      "start": {
                                        "line": 412,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 412,
                                        "column": 32
                                      }
                                    },
                                    "name": "Vector3"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "CallExpression",
                                    "start": 15619,
                                    "end": 15634,
                                    "loc": {
                                      "start": {
                                        "line": 412,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 412,
                                        "column": 48
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 15619,
                                      "end": 15627,
                                      "loc": {
                                        "start": {
                                          "line": 412,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 412,
                                          "column": 41
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 15619,
                                        "end": 15623,
                                        "loc": {
                                          "start": {
                                            "line": 412,
                                            "column": 33
                                          },
                                          "end": {
                                            "line": 412,
                                            "column": 37
                                          }
                                        },
                                        "name": "Math"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 15624,
                                        "end": 15627,
                                        "loc": {
                                          "start": {
                                            "line": 412,
                                            "column": 38
                                          },
                                          "end": {
                                            "line": 412,
                                            "column": 41
                                          }
                                        },
                                        "name": "cos"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 15628,
                                        "end": 15633,
                                        "loc": {
                                          "start": {
                                            "line": 412,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 412,
                                            "column": 47
                                          }
                                        },
                                        "name": "angle"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "CallExpression",
                                    "start": 15636,
                                    "end": 15651,
                                    "loc": {
                                      "start": {
                                        "line": 412,
                                        "column": 50
                                      },
                                      "end": {
                                        "line": 412,
                                        "column": 65
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 15636,
                                      "end": 15644,
                                      "loc": {
                                        "start": {
                                          "line": 412,
                                          "column": 50
                                        },
                                        "end": {
                                          "line": 412,
                                          "column": 58
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 15636,
                                        "end": 15640,
                                        "loc": {
                                          "start": {
                                            "line": 412,
                                            "column": 50
                                          },
                                          "end": {
                                            "line": 412,
                                            "column": 54
                                          }
                                        },
                                        "name": "Math"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 15641,
                                        "end": 15644,
                                        "loc": {
                                          "start": {
                                            "line": 412,
                                            "column": 55
                                          },
                                          "end": {
                                            "line": 412,
                                            "column": 58
                                          }
                                        },
                                        "name": "sin"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 15645,
                                        "end": 15650,
                                        "loc": {
                                          "start": {
                                            "line": 412,
                                            "column": 59
                                          },
                                          "end": {
                                            "line": 412,
                                            "column": 64
                                          }
                                        },
                                        "name": "angle"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "Literal",
                                    "start": 15653,
                                    "end": 15654,
                                    "loc": {
                                      "start": {
                                        "line": 412,
                                        "column": 67
                                      },
                                      "end": {
                                        "line": 412,
                                        "column": 68
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  }
                                ]
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 15656,
                                "end": 15670,
                                "loc": {
                                  "start": {
                                    "line": 412,
                                    "column": 70
                                  },
                                  "end": {
                                    "line": 412,
                                    "column": 84
                                  }
                                },
                                "name": "multiplyScalar"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 15671,
                                "end": 15682,
                                "loc": {
                                  "start": {
                                    "line": 412,
                                    "column": 85
                                  },
                                  "end": {
                                    "line": 412,
                                    "column": 96
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 15671,
                                  "end": 15675,
                                  "loc": {
                                    "start": {
                                      "line": 412,
                                      "column": 85
                                    },
                                    "end": {
                                      "line": 412,
                                      "column": 89
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 15676,
                                  "end": 15682,
                                  "loc": {
                                    "start": {
                                      "line": 412,
                                      "column": 90
                                    },
                                    "end": {
                                      "line": 412,
                                      "column": 96
                                    }
                                  },
                                  "name": "radius"
                                },
                                "computed": false
                              }
                            ]
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 15684,
                            "end": 15687,
                            "loc": {
                              "start": {
                                "line": 412,
                                "column": 98
                              },
                              "end": {
                                "line": 412,
                                "column": 101
                              }
                            },
                            "name": "add"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 15688,
                            "end": 15713,
                            "loc": {
                              "start": {
                                "line": 412,
                                "column": 102
                              },
                              "end": {
                                "line": 412,
                                "column": 127
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 15688,
                              "end": 15704,
                              "loc": {
                                "start": {
                                  "line": 412,
                                  "column": 102
                                },
                                "end": {
                                  "line": 412,
                                  "column": 118
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 15688,
                                "end": 15692,
                                "loc": {
                                  "start": {
                                    "line": 412,
                                    "column": 102
                                  },
                                  "end": {
                                    "line": 412,
                                    "column": 106
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 15693,
                                "end": 15704,
                                "loc": {
                                  "start": {
                                    "line": 412,
                                    "column": 107
                                  },
                                  "end": {
                                    "line": 412,
                                    "column": 118
                                  }
                                },
                                "name": "centerPoint"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 15705,
                              "end": 15713,
                              "loc": {
                                "start": {
                                  "line": 412,
                                  "column": 119
                                },
                                "end": {
                                  "line": 412,
                                  "column": 127
                                }
                              },
                              "name": "position"
                            },
                            "computed": false
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 15727,
              "end": 16128,
              "loc": {
                "start": {
                  "line": 415,
                  "column": 4
                },
                "end": {
                  "line": 425,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 15727,
                "end": 15737,
                "loc": {
                  "start": {
                    "line": 415,
                    "column": 4
                  },
                  "end": {
                    "line": 415,
                    "column": 14
                  }
                },
                "name": "getTangent"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 15737,
                "end": 16128,
                "loc": {
                  "start": {
                    "line": 415,
                    "column": 14
                  },
                  "end": {
                    "line": 425,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 15738,
                    "end": 15745,
                    "loc": {
                      "start": {
                        "line": 415,
                        "column": 15
                      },
                      "end": {
                        "line": 415,
                        "column": 22
                      }
                    },
                    "name": "atPoint"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 15747,
                  "end": 16128,
                  "loc": {
                    "start": {
                      "line": 415,
                      "column": 24
                    },
                    "end": {
                      "line": 425,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 15803,
                      "end": 15863,
                      "loc": {
                        "start": {
                          "line": 417,
                          "column": 8
                        },
                        "end": {
                          "line": 417,
                          "column": 68
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 15807,
                          "end": 15862,
                          "loc": {
                            "start": {
                              "line": 417,
                              "column": 12
                            },
                            "end": {
                              "line": 417,
                              "column": 67
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 15807,
                            "end": 15813,
                            "loc": {
                              "start": {
                                "line": 417,
                                "column": 12
                              },
                              "end": {
                                "line": 417,
                                "column": 18
                              }
                            },
                            "name": "radVec",
                            "leadingComments": null
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 15816,
                            "end": 15862,
                            "loc": {
                              "start": {
                                "line": 417,
                                "column": 21
                              },
                              "end": {
                                "line": 417,
                                "column": 67
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 15816,
                              "end": 15835,
                              "loc": {
                                "start": {
                                  "line": 417,
                                  "column": 21
                                },
                                "end": {
                                  "line": 417,
                                  "column": 40
                                }
                              },
                              "object": {
                                "type": "CallExpression",
                                "start": 15816,
                                "end": 15831,
                                "loc": {
                                  "start": {
                                    "line": 417,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 417,
                                    "column": 36
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 15816,
                                  "end": 15829,
                                  "loc": {
                                    "start": {
                                      "line": 417,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 417,
                                      "column": 34
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 15816,
                                    "end": 15823,
                                    "loc": {
                                      "start": {
                                        "line": 417,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 417,
                                        "column": 28
                                      }
                                    },
                                    "name": "atPoint"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 15824,
                                    "end": 15829,
                                    "loc": {
                                      "start": {
                                        "line": 417,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 417,
                                        "column": 34
                                      }
                                    },
                                    "name": "clone"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 15832,
                                "end": 15835,
                                "loc": {
                                  "start": {
                                    "line": 417,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 417,
                                    "column": 40
                                  }
                                },
                                "name": "sub"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 15836,
                                "end": 15861,
                                "loc": {
                                  "start": {
                                    "line": 417,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 417,
                                    "column": 66
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 15836,
                                  "end": 15852,
                                  "loc": {
                                    "start": {
                                      "line": 417,
                                      "column": 41
                                    },
                                    "end": {
                                      "line": 417,
                                      "column": 57
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 15836,
                                    "end": 15840,
                                    "loc": {
                                      "start": {
                                        "line": 417,
                                        "column": 41
                                      },
                                      "end": {
                                        "line": 417,
                                        "column": 45
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 15841,
                                    "end": 15852,
                                    "loc": {
                                      "start": {
                                        "line": 417,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 417,
                                        "column": 57
                                      }
                                    },
                                    "name": "centerPoint"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 15853,
                                  "end": 15861,
                                  "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": 15757,
                          "end": 15794,
                          "loc": {
                            "start": {
                              "line": 416,
                              "column": 8
                            },
                            "end": {
                              "line": 416,
                              "column": 45
                            }
                          },
                          "range": [
                            15757,
                            15794
                          ]
                        }
                      ]
                    },
                    {
                      "type": "IfStatement",
                      "start": 15872,
                      "end": 15945,
                      "loc": {
                        "start": {
                          "line": 418,
                          "column": 8
                        },
                        "end": {
                          "line": 419,
                          "column": 44
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 15876,
                        "end": 15899,
                        "loc": {
                          "start": {
                            "line": 418,
                            "column": 12
                          },
                          "end": {
                            "line": 418,
                            "column": 35
                          }
                        },
                        "left": {
                          "type": "CallExpression",
                          "start": 15876,
                          "end": 15891,
                          "loc": {
                            "start": {
                              "line": 418,
                              "column": 12
                            },
                            "end": {
                              "line": 418,
                              "column": 27
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 15876,
                            "end": 15889,
                            "loc": {
                              "start": {
                                "line": 418,
                                "column": 12
                              },
                              "end": {
                                "line": 418,
                                "column": 25
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 15876,
                              "end": 15882,
                              "loc": {
                                "start": {
                                  "line": 418,
                                  "column": 12
                                },
                                "end": {
                                  "line": 418,
                                  "column": 18
                                }
                              },
                              "name": "radVec"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 15883,
                              "end": 15889,
                              "loc": {
                                "start": {
                                  "line": 418,
                                  "column": 19
                                },
                                "end": {
                                  "line": 418,
                                  "column": 25
                                }
                              },
                              "name": "length"
                            },
                            "computed": false
                          },
                          "arguments": []
                        },
                        "operator": "<=",
                        "right": {
                          "type": "Literal",
                          "start": 15895,
                          "end": 15899,
                          "loc": {
                            "start": {
                              "line": 418,
                              "column": 31
                            },
                            "end": {
                              "line": 418,
                              "column": 35
                            }
                          },
                          "value": 1e-9,
                          "rawValue": 1e-9,
                          "raw": "1e-9"
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 15911,
                        "end": 15945,
                        "loc": {
                          "start": {
                            "line": 419,
                            "column": 10
                          },
                          "end": {
                            "line": 419,
                            "column": 44
                          }
                        },
                        "argument": {
                          "type": "NewExpression",
                          "start": 15918,
                          "end": 15944,
                          "loc": {
                            "start": {
                              "line": 419,
                              "column": 17
                            },
                            "end": {
                              "line": 419,
                              "column": 43
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 15922,
                            "end": 15935,
                            "loc": {
                              "start": {
                                "line": 419,
                                "column": 21
                              },
                              "end": {
                                "line": 419,
                                "column": 34
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 15922,
                              "end": 15927,
                              "loc": {
                                "start": {
                                  "line": 419,
                                  "column": 21
                                },
                                "end": {
                                  "line": 419,
                                  "column": 26
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 15928,
                              "end": 15935,
                              "loc": {
                                "start": {
                                  "line": 419,
                                  "column": 27
                                },
                                "end": {
                                  "line": 419,
                                  "column": 34
                                }
                              },
                              "name": "Vector3"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Literal",
                              "start": 15936,
                              "end": 15937,
                              "loc": {
                                "start": {
                                  "line": 419,
                                  "column": 35
                                },
                                "end": {
                                  "line": 419,
                                  "column": 36
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            },
                            {
                              "type": "Literal",
                              "start": 15939,
                              "end": 15940,
                              "loc": {
                                "start": {
                                  "line": 419,
                                  "column": 38
                                },
                                "end": {
                                  "line": 419,
                                  "column": 39
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            },
                            {
                              "type": "Literal",
                              "start": 15942,
                              "end": 15943,
                              "loc": {
                                "start": {
                                  "line": 419,
                                  "column": 41
                                },
                                "end": {
                                  "line": 419,
                                  "column": 42
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            }
                          ]
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 15954,
                      "end": 15973,
                      "loc": {
                        "start": {
                          "line": 420,
                          "column": 8
                        },
                        "end": {
                          "line": 420,
                          "column": 27
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 15954,
                        "end": 15972,
                        "loc": {
                          "start": {
                            "line": 420,
                            "column": 8
                          },
                          "end": {
                            "line": 420,
                            "column": 26
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 15954,
                          "end": 15970,
                          "loc": {
                            "start": {
                              "line": 420,
                              "column": 8
                            },
                            "end": {
                              "line": 420,
                              "column": 24
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 15954,
                            "end": 15960,
                            "loc": {
                              "start": {
                                "line": 420,
                                "column": 8
                              },
                              "end": {
                                "line": 420,
                                "column": 14
                              }
                            },
                            "name": "radVec"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 15961,
                            "end": 15970,
                            "loc": {
                              "start": {
                                "line": 420,
                                "column": 15
                              },
                              "end": {
                                "line": 420,
                                "column": 24
                              }
                            },
                            "name": "normalize"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 15982,
                      "end": 16040,
                      "loc": {
                        "start": {
                          "line": 421,
                          "column": 8
                        },
                        "end": {
                          "line": 421,
                          "column": 66
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 15986,
                          "end": 16039,
                          "loc": {
                            "start": {
                              "line": 421,
                              "column": 12
                            },
                            "end": {
                              "line": 421,
                              "column": 65
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 15986,
                            "end": 15993,
                            "loc": {
                              "start": {
                                "line": 421,
                                "column": 12
                              },
                              "end": {
                                "line": 421,
                                "column": 19
                              }
                            },
                            "name": "tangVec"
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 15996,
                            "end": 16039,
                            "loc": {
                              "start": {
                                "line": 421,
                                "column": 22
                              },
                              "end": {
                                "line": 421,
                                "column": 65
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 16000,
                              "end": 16013,
                              "loc": {
                                "start": {
                                  "line": 421,
                                  "column": 26
                                },
                                "end": {
                                  "line": 421,
                                  "column": 39
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 16000,
                                "end": 16005,
                                "loc": {
                                  "start": {
                                    "line": 421,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 421,
                                    "column": 31
                                  }
                                },
                                "name": "THREE"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 16006,
                                "end": 16013,
                                "loc": {
                                  "start": {
                                    "line": 421,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 421,
                                    "column": 39
                                  }
                                },
                                "name": "Vector3"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "UnaryExpression",
                                "start": 16014,
                                "end": 16023,
                                "loc": {
                                  "start": {
                                    "line": 421,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 421,
                                    "column": 49
                                  }
                                },
                                "operator": "-",
                                "prefix": true,
                                "argument": {
                                  "type": "MemberExpression",
                                  "start": 16015,
                                  "end": 16023,
                                  "loc": {
                                    "start": {
                                      "line": 421,
                                      "column": 41
                                    },
                                    "end": {
                                      "line": 421,
                                      "column": 49
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 16015,
                                    "end": 16021,
                                    "loc": {
                                      "start": {
                                        "line": 421,
                                        "column": 41
                                      },
                                      "end": {
                                        "line": 421,
                                        "column": 47
                                      }
                                    },
                                    "name": "radVec"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 16022,
                                    "end": 16023,
                                    "loc": {
                                      "start": {
                                        "line": 421,
                                        "column": 48
                                      },
                                      "end": {
                                        "line": 421,
                                        "column": 49
                                      }
                                    },
                                    "name": "y"
                                  },
                                  "computed": false
                                }
                              },
                              {
                                "type": "MemberExpression",
                                "start": 16025,
                                "end": 16033,
                                "loc": {
                                  "start": {
                                    "line": 421,
                                    "column": 51
                                  },
                                  "end": {
                                    "line": 421,
                                    "column": 59
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 16025,
                                  "end": 16031,
                                  "loc": {
                                    "start": {
                                      "line": 421,
                                      "column": 51
                                    },
                                    "end": {
                                      "line": 421,
                                      "column": 57
                                    }
                                  },
                                  "name": "radVec"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 16032,
                                  "end": 16033,
                                  "loc": {
                                    "start": {
                                      "line": 421,
                                      "column": 58
                                    },
                                    "end": {
                                      "line": 421,
                                      "column": 59
                                    }
                                  },
                                  "name": "x"
                                },
                                "computed": false
                              },
                              {
                                "type": "Literal",
                                "start": 16035,
                                "end": 16038,
                                "loc": {
                                  "start": {
                                    "line": 421,
                                    "column": 61
                                  },
                                  "end": {
                                    "line": 421,
                                    "column": 64
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0.0"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 16049,
                      "end": 16098,
                      "loc": {
                        "start": {
                          "line": 422,
                          "column": 8
                        },
                        "end": {
                          "line": 423,
                          "column": 29
                        }
                      },
                      "test": {
                        "type": "MemberExpression",
                        "start": 16053,
                        "end": 16067,
                        "loc": {
                          "start": {
                            "line": 422,
                            "column": 12
                          },
                          "end": {
                            "line": 422,
                            "column": 26
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 16053,
                          "end": 16057,
                          "loc": {
                            "start": {
                              "line": 422,
                              "column": 12
                            },
                            "end": {
                              "line": 422,
                              "column": 16
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 16058,
                          "end": 16067,
                          "loc": {
                            "start": {
                              "line": 422,
                              "column": 17
                            },
                            "end": {
                              "line": 422,
                              "column": 26
                            }
                          },
                          "name": "clockwise"
                        },
                        "computed": false
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 16081,
                        "end": 16098,
                        "loc": {
                          "start": {
                            "line": 423,
                            "column": 12
                          },
                          "end": {
                            "line": 423,
                            "column": 29
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 16081,
                          "end": 16097,
                          "loc": {
                            "start": {
                              "line": 423,
                              "column": 12
                            },
                            "end": {
                              "line": 423,
                              "column": 28
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 16081,
                            "end": 16095,
                            "loc": {
                              "start": {
                                "line": 423,
                                "column": 12
                              },
                              "end": {
                                "line": 423,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 16081,
                              "end": 16088,
                              "loc": {
                                "start": {
                                  "line": 423,
                                  "column": 12
                                },
                                "end": {
                                  "line": 423,
                                  "column": 19
                                }
                              },
                              "name": "tangVec"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 16089,
                              "end": 16095,
                              "loc": {
                                "start": {
                                  "line": 423,
                                  "column": 20
                                },
                                "end": {
                                  "line": 423,
                                  "column": 26
                                }
                              },
                              "name": "negate"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 16107,
                      "end": 16122,
                      "loc": {
                        "start": {
                          "line": 424,
                          "column": 8
                        },
                        "end": {
                          "line": 424,
                          "column": 23
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 16114,
                        "end": 16121,
                        "loc": {
                          "start": {
                            "line": 424,
                            "column": 15
                          },
                          "end": {
                            "line": 424,
                            "column": 22
                          }
                        },
                        "name": "tangVec"
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 16134,
              "end": 16210,
              "loc": {
                "start": {
                  "line": 427,
                  "column": 4
                },
                "end": {
                  "line": 429,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 16134,
                "end": 16142,
                "loc": {
                  "start": {
                    "line": 427,
                    "column": 4
                  },
                  "end": {
                    "line": 427,
                    "column": 12
                  }
                },
                "name": "getAngle"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 16142,
                "end": 16210,
                "loc": {
                  "start": {
                    "line": 427,
                    "column": 12
                  },
                  "end": {
                    "line": 429,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 16145,
                  "end": 16210,
                  "loc": {
                    "start": {
                      "line": 427,
                      "column": 15
                    },
                    "end": {
                      "line": 429,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 16155,
                      "end": 16204,
                      "loc": {
                        "start": {
                          "line": 428,
                          "column": 8
                        },
                        "end": {
                          "line": 428,
                          "column": 57
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 16162,
                        "end": 16203,
                        "loc": {
                          "start": {
                            "line": 428,
                            "column": 15
                          },
                          "end": {
                            "line": 428,
                            "column": 56
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 16162,
                          "end": 16170,
                          "loc": {
                            "start": {
                              "line": 428,
                              "column": 15
                            },
                            "end": {
                              "line": 428,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 16162,
                            "end": 16166,
                            "loc": {
                              "start": {
                                "line": 428,
                                "column": 15
                              },
                              "end": {
                                "line": 428,
                                "column": 19
                              }
                            },
                            "name": "Math"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 16167,
                            "end": 16170,
                            "loc": {
                              "start": {
                                "line": 428,
                                "column": 20
                              },
                              "end": {
                                "line": 428,
                                "column": 23
                              }
                            },
                            "name": "abs"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "BinaryExpression",
                            "start": 16171,
                            "end": 16202,
                            "loc": {
                              "start": {
                                "line": 428,
                                "column": 24
                              },
                              "end": {
                                "line": 428,
                                "column": 55
                              }
                            },
                            "left": {
                              "type": "MemberExpression",
                              "start": 16171,
                              "end": 16184,
                              "loc": {
                                "start": {
                                  "line": 428,
                                  "column": 24
                                },
                                "end": {
                                  "line": 428,
                                  "column": 37
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 16171,
                                "end": 16175,
                                "loc": {
                                  "start": {
                                    "line": 428,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 428,
                                    "column": 28
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 16176,
                                "end": 16184,
                                "loc": {
                                  "start": {
                                    "line": 428,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 428,
                                    "column": 37
                                  }
                                },
                                "name": "angleEnd"
                              },
                              "computed": false
                            },
                            "operator": "-",
                            "right": {
                              "type": "MemberExpression",
                              "start": 16187,
                              "end": 16202,
                              "loc": {
                                "start": {
                                  "line": 428,
                                  "column": 40
                                },
                                "end": {
                                  "line": 428,
                                  "column": 55
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 16187,
                                "end": 16191,
                                "loc": {
                                  "start": {
                                    "line": 428,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 428,
                                    "column": 44
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 16192,
                                "end": 16202,
                                "loc": {
                                  "start": {
                                    "line": 428,
                                    "column": 45
                                  },
                                  "end": {
                                    "line": 428,
                                    "column": 55
                                  }
                                },
                                "name": "angleStart"
                              },
                              "computed": false
                            }
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 16215,
              "end": 16280,
              "loc": {
                "start": {
                  "line": 430,
                  "column": 4
                },
                "end": {
                  "line": 432,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 16215,
                "end": 16224,
                "loc": {
                  "start": {
                    "line": 430,
                    "column": 4
                  },
                  "end": {
                    "line": 430,
                    "column": 13
                  }
                },
                "name": "getLength"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 16224,
                "end": 16280,
                "loc": {
                  "start": {
                    "line": 430,
                    "column": 13
                  },
                  "end": {
                    "line": 432,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 16227,
                  "end": 16280,
                  "loc": {
                    "start": {
                      "line": 430,
                      "column": 16
                    },
                    "end": {
                      "line": 432,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 16237,
                      "end": 16274,
                      "loc": {
                        "start": {
                          "line": 431,
                          "column": 8
                        },
                        "end": {
                          "line": 431,
                          "column": 45
                        }
                      },
                      "argument": {
                        "type": "BinaryExpression",
                        "start": 16244,
                        "end": 16273,
                        "loc": {
                          "start": {
                            "line": 431,
                            "column": 15
                          },
                          "end": {
                            "line": 431,
                            "column": 44
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 16244,
                          "end": 16255,
                          "loc": {
                            "start": {
                              "line": 431,
                              "column": 15
                            },
                            "end": {
                              "line": 431,
                              "column": 26
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 16244,
                            "end": 16248,
                            "loc": {
                              "start": {
                                "line": 431,
                                "column": 15
                              },
                              "end": {
                                "line": 431,
                                "column": 19
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 16249,
                            "end": 16255,
                            "loc": {
                              "start": {
                                "line": 431,
                                "column": 20
                              },
                              "end": {
                                "line": 431,
                                "column": 26
                              }
                            },
                            "name": "radius"
                          },
                          "computed": false
                        },
                        "operator": "*",
                        "right": {
                          "type": "CallExpression",
                          "start": 16258,
                          "end": 16273,
                          "loc": {
                            "start": {
                              "line": 431,
                              "column": 29
                            },
                            "end": {
                              "line": 431,
                              "column": 44
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 16258,
                            "end": 16271,
                            "loc": {
                              "start": {
                                "line": 431,
                                "column": 29
                              },
                              "end": {
                                "line": 431,
                                "column": 42
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 16258,
                              "end": 16262,
                              "loc": {
                                "start": {
                                  "line": 431,
                                  "column": 29
                                },
                                "end": {
                                  "line": 431,
                                  "column": 33
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 16263,
                              "end": 16271,
                              "loc": {
                                "start": {
                                  "line": 431,
                                  "column": 34
                                },
                                "end": {
                                  "line": 431,
                                  "column": 42
                                }
                              },
                              "name": "getAngle"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 16286,
              "end": 16857,
              "loc": {
                "start": {
                  "line": 434,
                  "column": 4
                },
                "end": {
                  "line": 445,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 16292,
                "end": 16304,
                "loc": {
                  "start": {
                    "line": 434,
                    "column": 10
                  },
                  "end": {
                    "line": 434,
                    "column": 22
                  }
                },
                "name": "moveRelative"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 16304,
                "end": 16857,
                "loc": {
                  "start": {
                    "line": 434,
                    "column": 22
                  },
                  "end": {
                    "line": 445,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 16305,
                    "end": 16314,
                    "loc": {
                      "start": {
                        "line": 434,
                        "column": 23
                      },
                      "end": {
                        "line": 434,
                        "column": 32
                      }
                    },
                    "name": "direction"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 16316,
                  "end": 16857,
                  "loc": {
                    "start": {
                      "line": 434,
                      "column": 34
                    },
                    "end": {
                      "line": 445,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 16326,
                      "end": 16373,
                      "loc": {
                        "start": {
                          "line": 435,
                          "column": 8
                        },
                        "end": {
                          "line": 435,
                          "column": 55
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 16330,
                          "end": 16372,
                          "loc": {
                            "start": {
                              "line": 435,
                              "column": 12
                            },
                            "end": {
                              "line": 435,
                              "column": 54
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 16330,
                            "end": 16333,
                            "loc": {
                              "start": {
                                "line": 435,
                                "column": 12
                              },
                              "end": {
                                "line": 435,
                                "column": 15
                              }
                            },
                            "name": "pts"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 16336,
                            "end": 16372,
                            "loc": {
                              "start": {
                                "line": 435,
                                "column": 18
                              },
                              "end": {
                                "line": 435,
                                "column": 54
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 16336,
                              "end": 16354,
                              "loc": {
                                "start": {
                                  "line": 435,
                                  "column": 18
                                },
                                "end": {
                                  "line": 435,
                                  "column": 36
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 16336,
                                "end": 16347,
                                "loc": {
                                  "start": {
                                    "line": 435,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 435,
                                    "column": 29
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 16336,
                                  "end": 16340,
                                  "loc": {
                                    "start": {
                                      "line": 435,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 435,
                                      "column": 22
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 16341,
                                  "end": 16347,
                                  "loc": {
                                    "start": {
                                      "line": 435,
                                      "column": 23
                                    },
                                    "end": {
                                      "line": 435,
                                      "column": 29
                                    }
                                  },
                                  "name": "points"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 16348,
                                "end": 16354,
                                "loc": {
                                  "start": {
                                    "line": 435,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 435,
                                    "column": 36
                                  }
                                },
                                "name": "concat"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 16355,
                                "end": 16371,
                                "loc": {
                                  "start": {
                                    "line": 435,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 435,
                                    "column": 53
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 16355,
                                  "end": 16359,
                                  "loc": {
                                    "start": {
                                      "line": 435,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 435,
                                      "column": 41
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 16360,
                                  "end": 16371,
                                  "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": 16382,
                          "end": 16450,
                          "loc": {
                            "start": {
                              "line": 436,
                              "column": 8
                            },
                            "end": {
                              "line": 436,
                              "column": 76
                            }
                          },
                          "range": [
                            16382,
                            16450
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 16459,
                      "end": 16503,
                      "loc": {
                        "start": {
                          "line": 437,
                          "column": 8
                        },
                        "end": {
                          "line": 437,
                          "column": 52
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 16459,
                        "end": 16502,
                        "loc": {
                          "start": {
                            "line": 437,
                            "column": 8
                          },
                          "end": {
                            "line": 437,
                            "column": 51
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 16459,
                          "end": 16470,
                          "loc": {
                            "start": {
                              "line": 437,
                              "column": 8
                            },
                            "end": {
                              "line": 437,
                              "column": 19
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 16459,
                            "end": 16462,
                            "loc": {
                              "start": {
                                "line": 437,
                                "column": 8
                              },
                              "end": {
                                "line": 437,
                                "column": 11
                              }
                            },
                            "name": "pts",
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 16463,
                            "end": 16470,
                            "loc": {
                              "start": {
                                "line": 437,
                                "column": 12
                              },
                              "end": {
                                "line": 437,
                                "column": 19
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 16471,
                            "end": 16501,
                            "loc": {
                              "start": {
                                "line": 437,
                                "column": 20
                              },
                              "end": {
                                "line": 437,
                                "column": 50
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": true,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 16471,
                                "end": 16472,
                                "loc": {
                                  "start": {
                                    "line": 437,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 437,
                                    "column": 21
                                  }
                                },
                                "name": "p"
                              }
                            ],
                            "body": {
                              "type": "CallExpression",
                              "start": 16476,
                              "end": 16501,
                              "loc": {
                                "start": {
                                  "line": 437,
                                  "column": 25
                                },
                                "end": {
                                  "line": 437,
                                  "column": 50
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 16476,
                                "end": 16490,
                                "loc": {
                                  "start": {
                                    "line": 437,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 437,
                                    "column": 39
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 16476,
                                  "end": 16486,
                                  "loc": {
                                    "start": {
                                      "line": 437,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 437,
                                      "column": 35
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 16476,
                                    "end": 16477,
                                    "loc": {
                                      "start": {
                                        "line": 437,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 437,
                                        "column": 26
                                      }
                                    },
                                    "name": "p"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 16478,
                                    "end": 16486,
                                    "loc": {
                                      "start": {
                                        "line": 437,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 437,
                                        "column": 35
                                      }
                                    },
                                    "name": "position"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 16487,
                                  "end": 16490,
                                  "loc": {
                                    "start": {
                                      "line": 437,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 437,
                                      "column": 39
                                    }
                                  },
                                  "name": "add"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 16491,
                                  "end": 16500,
                                  "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": 16382,
                          "end": 16450,
                          "loc": {
                            "start": {
                              "line": 436,
                              "column": 8
                            },
                            "end": {
                              "line": 436,
                              "column": 76
                            }
                          },
                          "range": [
                            16382,
                            16450
                          ]
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " update geometry after all points are moved",
                          "start": 16512,
                          "end": 16557,
                          "loc": {
                            "start": {
                              "line": 438,
                              "column": 8
                            },
                            "end": {
                              "line": 438,
                              "column": 53
                            }
                          },
                          "range": [
                            16512,
                            16557
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 16566,
                      "end": 16588,
                      "loc": {
                        "start": {
                          "line": 439,
                          "column": 8
                        },
                        "end": {
                          "line": 439,
                          "column": 30
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 16566,
                        "end": 16587,
                        "loc": {
                          "start": {
                            "line": 439,
                            "column": 8
                          },
                          "end": {
                            "line": 439,
                            "column": 29
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 16566,
                          "end": 16585,
                          "loc": {
                            "start": {
                              "line": 439,
                              "column": 8
                            },
                            "end": {
                              "line": 439,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 16566,
                            "end": 16570,
                            "loc": {
                              "start": {
                                "line": 439,
                                "column": 8
                              },
                              "end": {
                                "line": 439,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 16571,
                            "end": 16585,
                            "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": 16512,
                          "end": 16557,
                          "loc": {
                            "start": {
                              "line": 438,
                              "column": 8
                            },
                            "end": {
                              "line": 438,
                              "column": 53
                            }
                          },
                          "range": [
                            16512,
                            16557
                          ]
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "this.updateVisualization(); //TODO: why are endpoints not in sync otherwise?",
                          "start": 16597,
                          "end": 16675,
                          "loc": {
                            "start": {
                              "line": 440,
                              "column": 8
                            },
                            "end": {
                              "line": 440,
                              "column": 86
                            }
                          },
                          "range": [
                            16597,
                            16675
                          ]
                        },
                        {
                          "type": "CommentLine",
                          "value": " notify that all the points and the object were moved really",
                          "start": 16684,
                          "end": 16746,
                          "loc": {
                            "start": {
                              "line": 441,
                              "column": 8
                            },
                            "end": {
                              "line": 441,
                              "column": 70
                            }
                          },
                          "range": [
                            16684,
                            16746
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ForOfStatement",
                      "start": 16755,
                      "end": 16811,
                      "loc": {
                        "start": {
                          "line": 442,
                          "column": 8
                        },
                        "end": {
                          "line": 443,
                          "column": 37
                        }
                      },
                      "left": {
                        "type": "VariableDeclaration",
                        "start": 16760,
                        "end": 16765,
                        "loc": {
                          "start": {
                            "line": 442,
                            "column": 13
                          },
                          "end": {
                            "line": 442,
                            "column": 18
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 16764,
                            "end": 16765,
                            "loc": {
                              "start": {
                                "line": 442,
                                "column": 17
                              },
                              "end": {
                                "line": 442,
                                "column": 18
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 16764,
                              "end": 16765,
                              "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": 16769,
                        "end": 16772,
                        "loc": {
                          "start": {
                            "line": 442,
                            "column": 22
                          },
                          "end": {
                            "line": 442,
                            "column": 25
                          }
                        },
                        "name": "pts"
                      },
                      "body": {
                        "type": "ExpressionStatement",
                        "start": 16786,
                        "end": 16811,
                        "loc": {
                          "start": {
                            "line": 443,
                            "column": 12
                          },
                          "end": {
                            "line": 443,
                            "column": 37
                          }
                        },
                        "expression": {
                          "type": "AwaitExpression",
                          "start": 16786,
                          "end": 16810,
                          "loc": {
                            "start": {
                              "line": 443,
                              "column": 12
                            },
                            "end": {
                              "line": 443,
                              "column": 36
                            }
                          },
                          "all": false,
                          "argument": {
                            "type": "CallExpression",
                            "start": 16792,
                            "end": 16810,
                            "loc": {
                              "start": {
                                "line": 443,
                                "column": 18
                              },
                              "end": {
                                "line": 443,
                                "column": 36
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 16792,
                              "end": 16798,
                              "loc": {
                                "start": {
                                  "line": 443,
                                  "column": 18
                                },
                                "end": {
                                  "line": 443,
                                  "column": 24
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 16792,
                                "end": 16793,
                                "loc": {
                                  "start": {
                                    "line": 443,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 443,
                                    "column": 19
                                  }
                                },
                                "name": "p"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 16794,
                                "end": 16798,
                                "loc": {
                                  "start": {
                                    "line": 443,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 443,
                                    "column": 24
                                  }
                                },
                                "name": "emit"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Literal",
                                "start": 16799,
                                "end": 16806,
                                "loc": {
                                  "start": {
                                    "line": 443,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 443,
                                    "column": 32
                                  }
                                },
                                "value": "moved",
                                "rawValue": "moved",
                                "raw": "'moved'"
                              },
                              {
                                "type": "Identifier",
                                "start": 16808,
                                "end": 16809,
                                "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": 16597,
                          "end": 16675,
                          "loc": {
                            "start": {
                              "line": 440,
                              "column": 8
                            },
                            "end": {
                              "line": 440,
                              "column": 86
                            }
                          },
                          "range": [
                            16597,
                            16675
                          ]
                        },
                        {
                          "type": "CommentLine",
                          "value": " notify that all the points and the object were moved really",
                          "start": 16684,
                          "end": 16746,
                          "loc": {
                            "start": {
                              "line": 441,
                              "column": 8
                            },
                            "end": {
                              "line": 441,
                              "column": 70
                            }
                          },
                          "range": [
                            16684,
                            16746
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 16820,
                      "end": 16851,
                      "loc": {
                        "start": {
                          "line": 444,
                          "column": 8
                        },
                        "end": {
                          "line": 444,
                          "column": 39
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 16820,
                        "end": 16850,
                        "loc": {
                          "start": {
                            "line": 444,
                            "column": 8
                          },
                          "end": {
                            "line": 444,
                            "column": 38
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 16826,
                          "end": 16850,
                          "loc": {
                            "start": {
                              "line": 444,
                              "column": 14
                            },
                            "end": {
                              "line": 444,
                              "column": 38
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 16826,
                            "end": 16835,
                            "loc": {
                              "start": {
                                "line": 444,
                                "column": 14
                              },
                              "end": {
                                "line": 444,
                                "column": 23
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 16826,
                              "end": 16830,
                              "loc": {
                                "start": {
                                  "line": 444,
                                  "column": 14
                                },
                                "end": {
                                  "line": 444,
                                  "column": 18
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 16831,
                              "end": 16835,
                              "loc": {
                                "start": {
                                  "line": 444,
                                  "column": 19
                                },
                                "end": {
                                  "line": 444,
                                  "column": 23
                                }
                              },
                              "name": "emit"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Literal",
                              "start": 16836,
                              "end": 16843,
                              "loc": {
                                "start": {
                                  "line": 444,
                                  "column": 24
                                },
                                "end": {
                                  "line": 444,
                                  "column": 31
                                }
                              },
                              "value": "moved",
                              "rawValue": "moved",
                              "raw": "'moved'"
                            },
                            {
                              "type": "ThisExpression",
                              "start": 16845,
                              "end": 16849,
                              "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": 16863,
                  "end": 16949,
                  "loc": {
                    "start": {
                      "line": 447,
                      "column": 4
                    },
                    "end": {
                      "line": 447,
                      "column": 90
                    }
                  },
                  "range": [
                    16863,
                    16949
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": "one or more parameters can be undefined/null (meaning: do not change)",
                  "start": 16954,
                  "end": 17025,
                  "loc": {
                    "start": {
                      "line": 448,
                      "column": 4
                    },
                    "end": {
                      "line": 448,
                      "column": 75
                    }
                  },
                  "range": [
                    16954,
                    17025
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 17030,
              "end": 17373,
              "loc": {
                "start": {
                  "line": 449,
                  "column": 4
                },
                "end": {
                  "line": 459,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 17030,
                "end": 17036,
                "loc": {
                  "start": {
                    "line": 449,
                    "column": 4
                  },
                  "end": {
                    "line": 449,
                    "column": 10
                  }
                },
                "name": "modify",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 17036,
                "end": 17373,
                "loc": {
                  "start": {
                    "line": 449,
                    "column": 10
                  },
                  "end": {
                    "line": 459,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 17037,
                    "end": 17042,
                    "loc": {
                      "start": {
                        "line": 449,
                        "column": 11
                      },
                      "end": {
                        "line": 449,
                        "column": 16
                      }
                    },
                    "name": "start"
                  },
                  {
                    "type": "Identifier",
                    "start": 17044,
                    "end": 17047,
                    "loc": {
                      "start": {
                        "line": 449,
                        "column": 18
                      },
                      "end": {
                        "line": 449,
                        "column": 21
                      }
                    },
                    "name": "end"
                  },
                  {
                    "type": "Identifier",
                    "start": 17049,
                    "end": 17055,
                    "loc": {
                      "start": {
                        "line": 449,
                        "column": 23
                      },
                      "end": {
                        "line": 449,
                        "column": 29
                      }
                    },
                    "name": "center"
                  },
                  {
                    "type": "Identifier",
                    "start": 17057,
                    "end": 17066,
                    "loc": {
                      "start": {
                        "line": 449,
                        "column": 31
                      },
                      "end": {
                        "line": 449,
                        "column": 40
                      }
                    },
                    "name": "clockwise"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 17068,
                  "end": 17373,
                  "loc": {
                    "start": {
                      "line": 449,
                      "column": 42
                    },
                    "end": {
                      "line": 459,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 17078,
                      "end": 17137,
                      "loc": {
                        "start": {
                          "line": 450,
                          "column": 8
                        },
                        "end": {
                          "line": 451,
                          "column": 48
                        }
                      },
                      "test": {
                        "type": "Identifier",
                        "start": 17082,
                        "end": 17087,
                        "loc": {
                          "start": {
                            "line": 450,
                            "column": 12
                          },
                          "end": {
                            "line": 450,
                            "column": 17
                          }
                        },
                        "name": "start"
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 17101,
                        "end": 17137,
                        "loc": {
                          "start": {
                            "line": 451,
                            "column": 12
                          },
                          "end": {
                            "line": 451,
                            "column": 48
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 17101,
                          "end": 17136,
                          "loc": {
                            "start": {
                              "line": 451,
                              "column": 12
                            },
                            "end": {
                              "line": 451,
                              "column": 47
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 17101,
                            "end": 17129,
                            "loc": {
                              "start": {
                                "line": 451,
                                "column": 12
                              },
                              "end": {
                                "line": 451,
                                "column": 40
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 17101,
                              "end": 17124,
                              "loc": {
                                "start": {
                                  "line": 451,
                                  "column": 12
                                },
                                "end": {
                                  "line": 451,
                                  "column": 35
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 17101,
                                "end": 17115,
                                "loc": {
                                  "start": {
                                    "line": 451,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 451,
                                    "column": 26
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 17101,
                                  "end": 17112,
                                  "loc": {
                                    "start": {
                                      "line": 451,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 451,
                                      "column": 23
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 17101,
                                    "end": 17105,
                                    "loc": {
                                      "start": {
                                        "line": 451,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 451,
                                        "column": 16
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 17106,
                                    "end": 17112,
                                    "loc": {
                                      "start": {
                                        "line": 451,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 451,
                                        "column": 23
                                      }
                                    },
                                    "name": "points"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Literal",
                                  "start": 17113,
                                  "end": 17114,
                                  "loc": {
                                    "start": {
                                      "line": 451,
                                      "column": 24
                                    },
                                    "end": {
                                      "line": 451,
                                      "column": 25
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                },
                                "computed": true
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 17116,
                                "end": 17124,
                                "loc": {
                                  "start": {
                                    "line": 451,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 451,
                                    "column": 35
                                  }
                                },
                                "name": "position"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 17125,
                              "end": 17129,
                              "loc": {
                                "start": {
                                  "line": 451,
                                  "column": 36
                                },
                                "end": {
                                  "line": 451,
                                  "column": 40
                                }
                              },
                              "name": "copy"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 17130,
                              "end": 17135,
                              "loc": {
                                "start": {
                                  "line": 451,
                                  "column": 41
                                },
                                "end": {
                                  "line": 451,
                                  "column": 46
                                }
                              },
                              "name": "start"
                            }
                          ]
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 17146,
                      "end": 17201,
                      "loc": {
                        "start": {
                          "line": 452,
                          "column": 8
                        },
                        "end": {
                          "line": 453,
                          "column": 46
                        }
                      },
                      "test": {
                        "type": "Identifier",
                        "start": 17150,
                        "end": 17153,
                        "loc": {
                          "start": {
                            "line": 452,
                            "column": 12
                          },
                          "end": {
                            "line": 452,
                            "column": 15
                          }
                        },
                        "name": "end"
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 17167,
                        "end": 17201,
                        "loc": {
                          "start": {
                            "line": 453,
                            "column": 12
                          },
                          "end": {
                            "line": 453,
                            "column": 46
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 17167,
                          "end": 17200,
                          "loc": {
                            "start": {
                              "line": 453,
                              "column": 12
                            },
                            "end": {
                              "line": 453,
                              "column": 45
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 17167,
                            "end": 17195,
                            "loc": {
                              "start": {
                                "line": 453,
                                "column": 12
                              },
                              "end": {
                                "line": 453,
                                "column": 40
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 17167,
                              "end": 17190,
                              "loc": {
                                "start": {
                                  "line": 453,
                                  "column": 12
                                },
                                "end": {
                                  "line": 453,
                                  "column": 35
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 17167,
                                "end": 17181,
                                "loc": {
                                  "start": {
                                    "line": 453,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 453,
                                    "column": 26
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 17167,
                                  "end": 17178,
                                  "loc": {
                                    "start": {
                                      "line": 453,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 453,
                                      "column": 23
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 17167,
                                    "end": 17171,
                                    "loc": {
                                      "start": {
                                        "line": 453,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 453,
                                        "column": 16
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 17172,
                                    "end": 17178,
                                    "loc": {
                                      "start": {
                                        "line": 453,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 453,
                                        "column": 23
                                      }
                                    },
                                    "name": "points"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Literal",
                                  "start": 17179,
                                  "end": 17180,
                                  "loc": {
                                    "start": {
                                      "line": 453,
                                      "column": 24
                                    },
                                    "end": {
                                      "line": 453,
                                      "column": 25
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                },
                                "computed": true
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 17182,
                                "end": 17190,
                                "loc": {
                                  "start": {
                                    "line": 453,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 453,
                                    "column": 35
                                  }
                                },
                                "name": "position"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 17191,
                              "end": 17195,
                              "loc": {
                                "start": {
                                  "line": 453,
                                  "column": 36
                                },
                                "end": {
                                  "line": 453,
                                  "column": 40
                                }
                              },
                              "name": "copy"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 17196,
                              "end": 17199,
                              "loc": {
                                "start": {
                                  "line": 453,
                                  "column": 41
                                },
                                "end": {
                                  "line": 453,
                                  "column": 44
                                }
                              },
                              "name": "end"
                            }
                          ]
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 17210,
                      "end": 17273,
                      "loc": {
                        "start": {
                          "line": 454,
                          "column": 8
                        },
                        "end": {
                          "line": 455,
                          "column": 51
                        }
                      },
                      "test": {
                        "type": "Identifier",
                        "start": 17214,
                        "end": 17220,
                        "loc": {
                          "start": {
                            "line": 454,
                            "column": 12
                          },
                          "end": {
                            "line": 454,
                            "column": 18
                          }
                        },
                        "name": "center"
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 17234,
                        "end": 17273,
                        "loc": {
                          "start": {
                            "line": 455,
                            "column": 12
                          },
                          "end": {
                            "line": 455,
                            "column": 51
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 17234,
                          "end": 17272,
                          "loc": {
                            "start": {
                              "line": 455,
                              "column": 12
                            },
                            "end": {
                              "line": 455,
                              "column": 50
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 17234,
                            "end": 17264,
                            "loc": {
                              "start": {
                                "line": 455,
                                "column": 12
                              },
                              "end": {
                                "line": 455,
                                "column": 42
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 17234,
                              "end": 17259,
                              "loc": {
                                "start": {
                                  "line": 455,
                                  "column": 12
                                },
                                "end": {
                                  "line": 455,
                                  "column": 37
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 17234,
                                "end": 17250,
                                "loc": {
                                  "start": {
                                    "line": 455,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 455,
                                    "column": 28
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 17234,
                                  "end": 17238,
                                  "loc": {
                                    "start": {
                                      "line": 455,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 455,
                                      "column": 16
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 17239,
                                  "end": 17250,
                                  "loc": {
                                    "start": {
                                      "line": 455,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 455,
                                      "column": 28
                                    }
                                  },
                                  "name": "centerPoint"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 17251,
                                "end": 17259,
                                "loc": {
                                  "start": {
                                    "line": 455,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 455,
                                    "column": 37
                                  }
                                },
                                "name": "position"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 17260,
                              "end": 17264,
                              "loc": {
                                "start": {
                                  "line": 455,
                                  "column": 38
                                },
                                "end": {
                                  "line": 455,
                                  "column": 42
                                }
                              },
                              "name": "copy"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 17265,
                              "end": 17271,
                              "loc": {
                                "start": {
                                  "line": 455,
                                  "column": 43
                                },
                                "end": {
                                  "line": 455,
                                  "column": 49
                                }
                              },
                              "name": "center"
                            }
                          ]
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 17282,
                      "end": 17336,
                      "loc": {
                        "start": {
                          "line": 456,
                          "column": 8
                        },
                        "end": {
                          "line": 457,
                          "column": 39
                        }
                      },
                      "test": {
                        "type": "Identifier",
                        "start": 17286,
                        "end": 17295,
                        "loc": {
                          "start": {
                            "line": 456,
                            "column": 12
                          },
                          "end": {
                            "line": 456,
                            "column": 21
                          }
                        },
                        "name": "clockwise"
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 17309,
                        "end": 17336,
                        "loc": {
                          "start": {
                            "line": 457,
                            "column": 12
                          },
                          "end": {
                            "line": 457,
                            "column": 39
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 17309,
                          "end": 17335,
                          "loc": {
                            "start": {
                              "line": 457,
                              "column": 12
                            },
                            "end": {
                              "line": 457,
                              "column": 38
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "MemberExpression",
                            "start": 17309,
                            "end": 17323,
                            "loc": {
                              "start": {
                                "line": 457,
                                "column": 12
                              },
                              "end": {
                                "line": 457,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 17309,
                              "end": 17313,
                              "loc": {
                                "start": {
                                  "line": 457,
                                  "column": 12
                                },
                                "end": {
                                  "line": 457,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 17314,
                              "end": 17323,
                              "loc": {
                                "start": {
                                  "line": 457,
                                  "column": 17
                                },
                                "end": {
                                  "line": 457,
                                  "column": 26
                                }
                              },
                              "name": "clockwise"
                            },
                            "computed": false
                          },
                          "right": {
                            "type": "Identifier",
                            "start": 17326,
                            "end": 17335,
                            "loc": {
                              "start": {
                                "line": 457,
                                "column": 29
                              },
                              "end": {
                                "line": 457,
                                "column": 38
                              }
                            },
                            "name": "clockwise"
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 17345,
                      "end": 17367,
                      "loc": {
                        "start": {
                          "line": 458,
                          "column": 8
                        },
                        "end": {
                          "line": 458,
                          "column": 30
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 17345,
                        "end": 17366,
                        "loc": {
                          "start": {
                            "line": 458,
                            "column": 8
                          },
                          "end": {
                            "line": 458,
                            "column": 29
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 17345,
                          "end": 17364,
                          "loc": {
                            "start": {
                              "line": 458,
                              "column": 8
                            },
                            "end": {
                              "line": 458,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 17345,
                            "end": 17349,
                            "loc": {
                              "start": {
                                "line": 458,
                                "column": 8
                              },
                              "end": {
                                "line": 458,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 17350,
                            "end": 17364,
                            "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": 16863,
                  "end": 16949,
                  "loc": {
                    "start": {
                      "line": 447,
                      "column": 4
                    },
                    "end": {
                      "line": 447,
                      "column": 90
                    }
                  },
                  "range": [
                    16863,
                    16949
                  ]
                },
                {
                  "type": "CommentLine",
                  "value": "one or more parameters can be undefined/null (meaning: do not change)",
                  "start": 16954,
                  "end": 17025,
                  "loc": {
                    "start": {
                      "line": 448,
                      "column": 4
                    },
                    "end": {
                      "line": 448,
                      "column": 75
                    }
                  },
                  "range": [
                    16954,
                    17025
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 17379,
              "end": 17618,
              "loc": {
                "start": {
                  "line": 461,
                  "column": 4
                },
                "end": {
                  "line": 466,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 17385,
                "end": 17392,
                "loc": {
                  "start": {
                    "line": 461,
                    "column": 10
                  },
                  "end": {
                    "line": 461,
                    "column": 17
                  }
                },
                "name": "endDrag"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 17392,
                "end": 17618,
                "loc": {
                  "start": {
                    "line": 461,
                    "column": 17
                  },
                  "end": {
                    "line": 466,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 17393,
                    "end": 17399,
                    "loc": {
                      "start": {
                        "line": 461,
                        "column": 18
                      },
                      "end": {
                        "line": 461,
                        "column": 24
                      }
                    },
                    "name": "sketch"
                  },
                  {
                    "type": "Identifier",
                    "start": 17401,
                    "end": 17407,
                    "loc": {
                      "start": {
                        "line": 461,
                        "column": 26
                      },
                      "end": {
                        "line": 461,
                        "column": 32
                      }
                    },
                    "name": "socket"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 17409,
                  "end": 17618,
                  "loc": {
                    "start": {
                      "line": 461,
                      "column": 34
                    },
                    "end": {
                      "line": 466,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 17419,
                      "end": 17560,
                      "loc": {
                        "start": {
                          "line": 462,
                          "column": 8
                        },
                        "end": {
                          "line": 464,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "CallExpression",
                        "start": 17423,
                        "end": 17446,
                        "loc": {
                          "start": {
                            "line": 462,
                            "column": 12
                          },
                          "end": {
                            "line": 462,
                            "column": 35
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 17423,
                          "end": 17440,
                          "loc": {
                            "start": {
                              "line": 462,
                              "column": 12
                            },
                            "end": {
                              "line": 462,
                              "column": 29
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 17423,
                            "end": 17429,
                            "loc": {
                              "start": {
                                "line": 462,
                                "column": 12
                              },
                              "end": {
                                "line": 462,
                                "column": 18
                              }
                            },
                            "name": "sketch"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 17430,
                            "end": 17440,
                            "loc": {
                              "start": {
                                "line": 462,
                                "column": 19
                              },
                              "end": {
                                "line": 462,
                                "column": 29
                              }
                            },
                            "name": "isOnSketch"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ThisExpression",
                            "start": 17441,
                            "end": 17445,
                            "loc": {
                              "start": {
                                "line": 462,
                                "column": 30
                              },
                              "end": {
                                "line": 462,
                                "column": 34
                              }
                            }
                          }
                        ]
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 17448,
                        "end": 17560,
                        "loc": {
                          "start": {
                            "line": 462,
                            "column": 37
                          },
                          "end": {
                            "line": 464,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 17462,
                            "end": 17550,
                            "loc": {
                              "start": {
                                "line": 463,
                                "column": 12
                              },
                              "end": {
                                "line": 463,
                                "column": 100
                              }
                            },
                            "expression": {
                              "type": "AwaitExpression",
                              "start": 17462,
                              "end": 17549,
                              "loc": {
                                "start": {
                                  "line": 463,
                                  "column": 12
                                },
                                "end": {
                                  "line": 463,
                                  "column": 99
                                }
                              },
                              "all": false,
                              "argument": {
                                "type": "CallExpression",
                                "start": 17468,
                                "end": 17549,
                                "loc": {
                                  "start": {
                                    "line": 463,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 463,
                                    "column": 99
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 17468,
                                  "end": 17541,
                                  "loc": {
                                    "start": {
                                      "line": 463,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 463,
                                      "column": 91
                                    }
                                  },
                                  "object": {
                                    "type": "CallExpression",
                                    "start": 17468,
                                    "end": 17533,
                                    "loc": {
                                      "start": {
                                        "line": 463,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 463,
                                        "column": 83
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 17468,
                                      "end": 17506,
                                      "loc": {
                                        "start": {
                                          "line": 463,
                                          "column": 18
                                        },
                                        "end": {
                                          "line": 463,
                                          "column": 56
                                        }
                                      },
                                      "object": {
                                        "type": "CallExpression",
                                        "start": 17468,
                                        "end": 17502,
                                        "loc": {
                                          "start": {
                                            "line": 463,
                                            "column": 18
                                          },
                                          "end": {
                                            "line": 463,
                                            "column": 52
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 17468,
                                          "end": 17494,
                                          "loc": {
                                            "start": {
                                              "line": 463,
                                              "column": 18
                                            },
                                            "end": {
                                              "line": 463,
                                              "column": 44
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 17468,
                                            "end": 17472,
                                            "loc": {
                                              "start": {
                                                "line": 463,
                                                "column": 18
                                              },
                                              "end": {
                                                "line": 463,
                                                "column": 22
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 17473,
                                            "end": 17494,
                                            "loc": {
                                              "start": {
                                                "line": 463,
                                                "column": 23
                                              },
                                              "end": {
                                                "line": 463,
                                                "column": 44
                                              }
                                            },
                                            "name": "prepareUpdateToServer"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 17495,
                                            "end": 17501,
                                            "loc": {
                                              "start": {
                                                "line": 463,
                                                "column": 45
                                              },
                                              "end": {
                                                "line": 463,
                                                "column": 51
                                              }
                                            },
                                            "name": "sketch"
                                          }
                                        ]
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 17503,
                                        "end": 17506,
                                        "loc": {
                                          "start": {
                                            "line": 463,
                                            "column": 53
                                          },
                                          "end": {
                                            "line": 463,
                                            "column": 56
                                          }
                                        },
                                        "name": "and"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "CallExpression",
                                        "start": 17507,
                                        "end": 17532,
                                        "loc": {
                                          "start": {
                                            "line": 463,
                                            "column": 57
                                          },
                                          "end": {
                                            "line": 463,
                                            "column": 82
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 17507,
                                          "end": 17530,
                                          "loc": {
                                            "start": {
                                              "line": 463,
                                              "column": 57
                                            },
                                            "end": {
                                              "line": 463,
                                              "column": 80
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 17507,
                                            "end": 17513,
                                            "loc": {
                                              "start": {
                                                "line": 463,
                                                "column": 57
                                              },
                                              "end": {
                                                "line": 463,
                                                "column": 63
                                              }
                                            },
                                            "name": "sketch"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 17514,
                                            "end": 17530,
                                            "loc": {
                                              "start": {
                                                "line": 463,
                                                "column": 64
                                              },
                                              "end": {
                                                "line": 463,
                                                "column": 80
                                              }
                                            },
                                            "name": "updateFromServer"
                                          },
                                          "computed": false
                                        },
                                        "arguments": []
                                      }
                                    ]
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 17534,
                                    "end": 17541,
                                    "loc": {
                                      "start": {
                                        "line": 463,
                                        "column": 84
                                      },
                                      "end": {
                                        "line": 463,
                                        "column": 91
                                      }
                                    },
                                    "name": "execute"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 17542,
                                    "end": 17548,
                                    "loc": {
                                      "start": {
                                        "line": 463,
                                        "column": 92
                                      },
                                      "end": {
                                        "line": 463,
                                        "column": 98
                                      }
                                    },
                                    "name": "socket"
                                  }
                                ]
                              }
                            }
                          }
                        ]
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 17569,
                      "end": 17612,
                      "loc": {
                        "start": {
                          "line": 465,
                          "column": 8
                        },
                        "end": {
                          "line": 465,
                          "column": 51
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 17569,
                        "end": 17611,
                        "loc": {
                          "start": {
                            "line": 465,
                            "column": 8
                          },
                          "end": {
                            "line": 465,
                            "column": 50
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 17575,
                          "end": 17611,
                          "loc": {
                            "start": {
                              "line": 465,
                              "column": 14
                            },
                            "end": {
                              "line": 465,
                              "column": 50
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 17575,
                            "end": 17584,
                            "loc": {
                              "start": {
                                "line": 465,
                                "column": 14
                              },
                              "end": {
                                "line": 465,
                                "column": 23
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 17575,
                              "end": 17579,
                              "loc": {
                                "start": {
                                  "line": 465,
                                  "column": 14
                                },
                                "end": {
                                  "line": 465,
                                  "column": 18
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 17580,
                              "end": 17584,
                              "loc": {
                                "start": {
                                  "line": 465,
                                  "column": 19
                                },
                                "end": {
                                  "line": 465,
                                  "column": 23
                                }
                              },
                              "name": "emit"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Literal",
                              "start": 17585,
                              "end": 17594,
                              "loc": {
                                "start": {
                                  "line": 465,
                                  "column": 24
                                },
                                "end": {
                                  "line": 465,
                                  "column": 33
                                }
                              },
                              "value": "dragend",
                              "rawValue": "dragend",
                              "raw": "'dragend'"
                            },
                            {
                              "type": "Identifier",
                              "start": 17596,
                              "end": 17602,
                              "loc": {
                                "start": {
                                  "line": 465,
                                  "column": 35
                                },
                                "end": {
                                  "line": 465,
                                  "column": 41
                                }
                              },
                              "name": "sketch"
                            },
                            {
                              "type": "Identifier",
                              "start": 17604,
                              "end": 17610,
                              "loc": {
                                "start": {
                                  "line": 465,
                                  "column": 43
                                },
                                "end": {
                                  "line": 465,
                                  "column": 49
                                }
                              },
                              "name": "socket"
                            }
                          ]
                        }
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 17624,
              "end": 17820,
              "loc": {
                "start": {
                  "line": 468,
                  "column": 4
                },
                "end": {
                  "line": 472,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 17624,
                "end": 17634,
                "loc": {
                  "start": {
                    "line": 468,
                    "column": 4
                  },
                  "end": {
                    "line": 468,
                    "column": 14
                  }
                },
                "name": "setVisible"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 17634,
                "end": 17820,
                "loc": {
                  "start": {
                    "line": 468,
                    "column": 14
                  },
                  "end": {
                    "line": 472,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 17635,
                    "end": 17645,
                    "loc": {
                      "start": {
                        "line": 468,
                        "column": 15
                      },
                      "end": {
                        "line": 468,
                        "column": 25
                      }
                    },
                    "name": "visibility"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 17647,
                  "end": 17820,
                  "loc": {
                    "start": {
                      "line": 468,
                      "column": 27
                    },
                    "end": {
                      "line": 472,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 17657,
                      "end": 17697,
                      "loc": {
                        "start": {
                          "line": 469,
                          "column": 8
                        },
                        "end": {
                          "line": 469,
                          "column": 48
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 17657,
                        "end": 17696,
                        "loc": {
                          "start": {
                            "line": 469,
                            "column": 8
                          },
                          "end": {
                            "line": 469,
                            "column": 47
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 17657,
                          "end": 17683,
                          "loc": {
                            "start": {
                              "line": 469,
                              "column": 8
                            },
                            "end": {
                              "line": 469,
                              "column": 34
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 17657,
                            "end": 17675,
                            "loc": {
                              "start": {
                                "line": 469,
                                "column": 8
                              },
                              "end": {
                                "line": 469,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 17657,
                              "end": 17666,
                              "loc": {
                                "start": {
                                  "line": 469,
                                  "column": 8
                                },
                                "end": {
                                  "line": 469,
                                  "column": 17
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 17657,
                                "end": 17661,
                                "loc": {
                                  "start": {
                                    "line": 469,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 469,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 17662,
                                "end": 17666,
                                "loc": {
                                  "start": {
                                    "line": 469,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 469,
                                    "column": 17
                                  }
                                },
                                "name": "mesh"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 17667,
                              "end": 17675,
                              "loc": {
                                "start": {
                                  "line": 469,
                                  "column": 18
                                },
                                "end": {
                                  "line": 469,
                                  "column": 26
                                }
                              },
                              "name": "material"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 17676,
                            "end": 17683,
                            "loc": {
                              "start": {
                                "line": 469,
                                "column": 27
                              },
                              "end": {
                                "line": 469,
                                "column": 34
                              }
                            },
                            "name": "visible"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Identifier",
                          "start": 17686,
                          "end": 17696,
                          "loc": {
                            "start": {
                              "line": 469,
                              "column": 37
                            },
                            "end": {
                              "line": 469,
                              "column": 47
                            }
                          },
                          "name": "visibility"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 17706,
                      "end": 17765,
                      "loc": {
                        "start": {
                          "line": 470,
                          "column": 8
                        },
                        "end": {
                          "line": 470,
                          "column": 67
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 17706,
                        "end": 17764,
                        "loc": {
                          "start": {
                            "line": 470,
                            "column": 8
                          },
                          "end": {
                            "line": 470,
                            "column": 66
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 17706,
                          "end": 17725,
                          "loc": {
                            "start": {
                              "line": 470,
                              "column": 8
                            },
                            "end": {
                              "line": 470,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 17706,
                            "end": 17717,
                            "loc": {
                              "start": {
                                "line": 470,
                                "column": 8
                              },
                              "end": {
                                "line": 470,
                                "column": 19
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 17706,
                              "end": 17710,
                              "loc": {
                                "start": {
                                  "line": 470,
                                  "column": 8
                                },
                                "end": {
                                  "line": 470,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 17711,
                              "end": 17717,
                              "loc": {
                                "start": {
                                  "line": 470,
                                  "column": 13
                                },
                                "end": {
                                  "line": 470,
                                  "column": 19
                                }
                              },
                              "name": "points"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 17718,
                            "end": 17725,
                            "loc": {
                              "start": {
                                "line": 470,
                                "column": 20
                              },
                              "end": {
                                "line": 470,
                                "column": 27
                              }
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 17726,
                            "end": 17763,
                            "loc": {
                              "start": {
                                "line": 470,
                                "column": 28
                              },
                              "end": {
                                "line": 470,
                                "column": 65
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": true,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 17726,
                                "end": 17731,
                                "loc": {
                                  "start": {
                                    "line": 470,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 470,
                                    "column": 33
                                  }
                                },
                                "name": "point"
                              }
                            ],
                            "body": {
                              "type": "CallExpression",
                              "start": 17735,
                              "end": 17763,
                              "loc": {
                                "start": {
                                  "line": 470,
                                  "column": 37
                                },
                                "end": {
                                  "line": 470,
                                  "column": 65
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 17735,
                                "end": 17751,
                                "loc": {
                                  "start": {
                                    "line": 470,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 470,
                                    "column": 53
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 17735,
                                  "end": 17740,
                                  "loc": {
                                    "start": {
                                      "line": 470,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 470,
                                      "column": 42
                                    }
                                  },
                                  "name": "point"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 17741,
                                  "end": 17751,
                                  "loc": {
                                    "start": {
                                      "line": 470,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 470,
                                      "column": 53
                                    }
                                  },
                                  "name": "setVisible"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 17752,
                                  "end": 17762,
                                  "loc": {
                                    "start": {
                                      "line": 470,
                                      "column": 54
                                    },
                                    "end": {
                                      "line": 470,
                                      "column": 64
                                    }
                                  },
                                  "name": "visibility"
                                }
                              ]
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 17774,
                      "end": 17814,
                      "loc": {
                        "start": {
                          "line": 471,
                          "column": 8
                        },
                        "end": {
                          "line": 471,
                          "column": 48
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 17774,
                        "end": 17813,
                        "loc": {
                          "start": {
                            "line": 471,
                            "column": 8
                          },
                          "end": {
                            "line": 471,
                            "column": 47
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 17774,
                          "end": 17801,
                          "loc": {
                            "start": {
                              "line": 471,
                              "column": 8
                            },
                            "end": {
                              "line": 471,
                              "column": 35
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 17774,
                            "end": 17790,
                            "loc": {
                              "start": {
                                "line": 471,
                                "column": 8
                              },
                              "end": {
                                "line": 471,
                                "column": 24
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 17774,
                              "end": 17778,
                              "loc": {
                                "start": {
                                  "line": 471,
                                  "column": 8
                                },
                                "end": {
                                  "line": 471,
                                  "column": 12
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 17779,
                              "end": 17790,
                              "loc": {
                                "start": {
                                  "line": 471,
                                  "column": 13
                                },
                                "end": {
                                  "line": 471,
                                  "column": 24
                                }
                              },
                              "name": "centerPoint"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 17791,
                            "end": 17801,
                            "loc": {
                              "start": {
                                "line": 471,
                                "column": 25
                              },
                              "end": {
                                "line": 471,
                                "column": 35
                              }
                            },
                            "name": "setVisible"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 17802,
                            "end": 17812,
                            "loc": {
                              "start": {
                                "line": 471,
                                "column": 36
                              },
                              "end": {
                                "line": 471,
                                "column": 46
                              }
                            },
                            "name": "visibility"
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 17826,
              "end": 19695,
              "loc": {
                "start": {
                  "line": 474,
                  "column": 4
                },
                "end": {
                  "line": 508,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 17826,
                "end": 17840,
                "loc": {
                  "start": {
                    "line": 474,
                    "column": 4
                  },
                  "end": {
                    "line": 474,
                    "column": 18
                  }
                },
                "name": "updateGeometry"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 17840,
                "end": 19695,
                "loc": {
                  "start": {
                    "line": 474,
                    "column": 18
                  },
                  "end": {
                    "line": 508,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 17841,
                    "end": 17851,
                    "loc": {
                      "start": {
                        "line": 474,
                        "column": 19
                      },
                      "end": {
                        "line": 474,
                        "column": 29
                      }
                    },
                    "name": "movedPoint"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 17853,
                  "end": 19695,
                  "loc": {
                    "start": {
                      "line": 474,
                      "column": 31
                    },
                    "end": {
                      "line": 508,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 17863,
                      "end": 18405,
                      "loc": {
                        "start": {
                          "line": 475,
                          "column": 8
                        },
                        "end": {
                          "line": 482,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 17867,
                        "end": 17898,
                        "loc": {
                          "start": {
                            "line": 475,
                            "column": 12
                          },
                          "end": {
                            "line": 475,
                            "column": 43
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 17867,
                          "end": 17877,
                          "loc": {
                            "start": {
                              "line": 475,
                              "column": 12
                            },
                            "end": {
                              "line": 475,
                              "column": 22
                            }
                          },
                          "name": "movedPoint"
                        },
                        "operator": "===",
                        "right": {
                          "type": "MemberExpression",
                          "start": 17882,
                          "end": 17898,
                          "loc": {
                            "start": {
                              "line": 475,
                              "column": 27
                            },
                            "end": {
                              "line": 475,
                              "column": 43
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 17882,
                            "end": 17886,
                            "loc": {
                              "start": {
                                "line": 475,
                                "column": 27
                              },
                              "end": {
                                "line": 475,
                                "column": 31
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 17887,
                            "end": 17898,
                            "loc": {
                              "start": {
                                "line": 475,
                                "column": 32
                              },
                              "end": {
                                "line": 475,
                                "column": 43
                              }
                            },
                            "name": "centerPoint"
                          },
                          "computed": false
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 17900,
                        "end": 18405,
                        "loc": {
                          "start": {
                            "line": 475,
                            "column": 45
                          },
                          "end": {
                            "line": 482,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 17914,
                            "end": 18001,
                            "loc": {
                              "start": {
                                "line": 476,
                                "column": 12
                              },
                              "end": {
                                "line": 476,
                                "column": 99
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 17918,
                                "end": 18000,
                                "loc": {
                                  "start": {
                                    "line": 476,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 476,
                                    "column": 98
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 17918,
                                  "end": 17921,
                                  "loc": {
                                    "start": {
                                      "line": 476,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 476,
                                      "column": 19
                                    }
                                  },
                                  "name": "mid"
                                },
                                "init": {
                                  "type": "CallExpression",
                                  "start": 17924,
                                  "end": 18000,
                                  "loc": {
                                    "start": {
                                      "line": 476,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 476,
                                      "column": 98
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 17924,
                                    "end": 17997,
                                    "loc": {
                                      "start": {
                                        "line": 476,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 476,
                                        "column": 95
                                      }
                                    },
                                    "object": {
                                      "type": "CallExpression",
                                      "start": 17924,
                                      "end": 17984,
                                      "loc": {
                                        "start": {
                                          "line": 476,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 476,
                                          "column": 82
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 17924,
                                        "end": 17959,
                                        "loc": {
                                          "start": {
                                            "line": 476,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 476,
                                            "column": 57
                                          }
                                        },
                                        "object": {
                                          "type": "CallExpression",
                                          "start": 17924,
                                          "end": 17955,
                                          "loc": {
                                            "start": {
                                              "line": 476,
                                              "column": 22
                                            },
                                            "end": {
                                              "line": 476,
                                              "column": 53
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 17924,
                                            "end": 17953,
                                            "loc": {
                                              "start": {
                                                "line": 476,
                                                "column": 22
                                              },
                                              "end": {
                                                "line": 476,
                                                "column": 51
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 17924,
                                              "end": 17947,
                                              "loc": {
                                                "start": {
                                                  "line": 476,
                                                  "column": 22
                                                },
                                                "end": {
                                                  "line": 476,
                                                  "column": 45
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 17924,
                                                "end": 17938,
                                                "loc": {
                                                  "start": {
                                                    "line": 476,
                                                    "column": 22
                                                  },
                                                  "end": {
                                                    "line": 476,
                                                    "column": 36
                                                  }
                                                },
                                                "object": {
                                                  "type": "MemberExpression",
                                                  "start": 17924,
                                                  "end": 17935,
                                                  "loc": {
                                                    "start": {
                                                      "line": 476,
                                                      "column": 22
                                                    },
                                                    "end": {
                                                      "line": 476,
                                                      "column": 33
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "ThisExpression",
                                                    "start": 17924,
                                                    "end": 17928,
                                                    "loc": {
                                                      "start": {
                                                        "line": 476,
                                                        "column": 22
                                                      },
                                                      "end": {
                                                        "line": 476,
                                                        "column": 26
                                                      }
                                                    }
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 17929,
                                                    "end": 17935,
                                                    "loc": {
                                                      "start": {
                                                        "line": 476,
                                                        "column": 27
                                                      },
                                                      "end": {
                                                        "line": 476,
                                                        "column": 33
                                                      }
                                                    },
                                                    "name": "points"
                                                  },
                                                  "computed": false
                                                },
                                                "property": {
                                                  "type": "Literal",
                                                  "start": 17936,
                                                  "end": 17937,
                                                  "loc": {
                                                    "start": {
                                                      "line": 476,
                                                      "column": 34
                                                    },
                                                    "end": {
                                                      "line": 476,
                                                      "column": 35
                                                    }
                                                  },
                                                  "value": 1,
                                                  "rawValue": 1,
                                                  "raw": "1"
                                                },
                                                "computed": true
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 17939,
                                                "end": 17947,
                                                "loc": {
                                                  "start": {
                                                    "line": 476,
                                                    "column": 37
                                                  },
                                                  "end": {
                                                    "line": 476,
                                                    "column": 45
                                                  }
                                                },
                                                "name": "position"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 17948,
                                              "end": 17953,
                                              "loc": {
                                                "start": {
                                                  "line": 476,
                                                  "column": 46
                                                },
                                                "end": {
                                                  "line": 476,
                                                  "column": 51
                                                }
                                              },
                                              "name": "clone"
                                            },
                                            "computed": false
                                          },
                                          "arguments": []
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 17956,
                                          "end": 17959,
                                          "loc": {
                                            "start": {
                                              "line": 476,
                                              "column": 54
                                            },
                                            "end": {
                                              "line": 476,
                                              "column": 57
                                            }
                                          },
                                          "name": "add"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "MemberExpression",
                                          "start": 17960,
                                          "end": 17983,
                                          "loc": {
                                            "start": {
                                              "line": 476,
                                              "column": 58
                                            },
                                            "end": {
                                              "line": 476,
                                              "column": 81
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 17960,
                                            "end": 17974,
                                            "loc": {
                                              "start": {
                                                "line": 476,
                                                "column": 58
                                              },
                                              "end": {
                                                "line": 476,
                                                "column": 72
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 17960,
                                              "end": 17971,
                                              "loc": {
                                                "start": {
                                                  "line": 476,
                                                  "column": 58
                                                },
                                                "end": {
                                                  "line": 476,
                                                  "column": 69
                                                }
                                              },
                                              "object": {
                                                "type": "ThisExpression",
                                                "start": 17960,
                                                "end": 17964,
                                                "loc": {
                                                  "start": {
                                                    "line": 476,
                                                    "column": 58
                                                  },
                                                  "end": {
                                                    "line": 476,
                                                    "column": 62
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 17965,
                                                "end": 17971,
                                                "loc": {
                                                  "start": {
                                                    "line": 476,
                                                    "column": 63
                                                  },
                                                  "end": {
                                                    "line": 476,
                                                    "column": 69
                                                  }
                                                },
                                                "name": "points"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Literal",
                                              "start": 17972,
                                              "end": 17973,
                                              "loc": {
                                                "start": {
                                                  "line": 476,
                                                  "column": 70
                                                },
                                                "end": {
                                                  "line": 476,
                                                  "column": 71
                                                }
                                              },
                                              "value": 0,
                                              "rawValue": 0,
                                              "raw": "0"
                                            },
                                            "computed": true
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 17975,
                                            "end": 17983,
                                            "loc": {
                                              "start": {
                                                "line": 476,
                                                "column": 73
                                              },
                                              "end": {
                                                "line": 476,
                                                "column": 81
                                              }
                                            },
                                            "name": "position"
                                          },
                                          "computed": false
                                        }
                                      ]
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 17985,
                                      "end": 17997,
                                      "loc": {
                                        "start": {
                                          "line": 476,
                                          "column": 83
                                        },
                                        "end": {
                                          "line": 476,
                                          "column": 95
                                        }
                                      },
                                      "name": "divideScalar"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Literal",
                                      "start": 17998,
                                      "end": 17999,
                                      "loc": {
                                        "start": {
                                          "line": 476,
                                          "column": 96
                                        },
                                        "end": {
                                          "line": 476,
                                          "column": 97
                                        }
                                      },
                                      "value": 2,
                                      "rawValue": 2,
                                      "raw": "2"
                                    }
                                  ]
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 18014,
                            "end": 18085,
                            "loc": {
                              "start": {
                                "line": 477,
                                "column": 12
                              },
                              "end": {
                                "line": 477,
                                "column": 83
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 18018,
                                "end": 18084,
                                "loc": {
                                  "start": {
                                    "line": 477,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 477,
                                    "column": 82
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 18018,
                                  "end": 18021,
                                  "loc": {
                                    "start": {
                                      "line": 477,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 477,
                                      "column": 19
                                    }
                                  },
                                  "name": "dir"
                                },
                                "init": {
                                  "type": "CallExpression",
                                  "start": 18024,
                                  "end": 18084,
                                  "loc": {
                                    "start": {
                                      "line": 477,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 477,
                                      "column": 82
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 18024,
                                    "end": 18059,
                                    "loc": {
                                      "start": {
                                        "line": 477,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 477,
                                        "column": 57
                                      }
                                    },
                                    "object": {
                                      "type": "CallExpression",
                                      "start": 18024,
                                      "end": 18055,
                                      "loc": {
                                        "start": {
                                          "line": 477,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 477,
                                          "column": 53
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 18024,
                                        "end": 18053,
                                        "loc": {
                                          "start": {
                                            "line": 477,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 477,
                                            "column": 51
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 18024,
                                          "end": 18047,
                                          "loc": {
                                            "start": {
                                              "line": 477,
                                              "column": 22
                                            },
                                            "end": {
                                              "line": 477,
                                              "column": 45
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 18024,
                                            "end": 18038,
                                            "loc": {
                                              "start": {
                                                "line": 477,
                                                "column": 22
                                              },
                                              "end": {
                                                "line": 477,
                                                "column": 36
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 18024,
                                              "end": 18035,
                                              "loc": {
                                                "start": {
                                                  "line": 477,
                                                  "column": 22
                                                },
                                                "end": {
                                                  "line": 477,
                                                  "column": 33
                                                }
                                              },
                                              "object": {
                                                "type": "ThisExpression",
                                                "start": 18024,
                                                "end": 18028,
                                                "loc": {
                                                  "start": {
                                                    "line": 477,
                                                    "column": 22
                                                  },
                                                  "end": {
                                                    "line": 477,
                                                    "column": 26
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 18029,
                                                "end": 18035,
                                                "loc": {
                                                  "start": {
                                                    "line": 477,
                                                    "column": 27
                                                  },
                                                  "end": {
                                                    "line": 477,
                                                    "column": 33
                                                  }
                                                },
                                                "name": "points"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Literal",
                                              "start": 18036,
                                              "end": 18037,
                                              "loc": {
                                                "start": {
                                                  "line": 477,
                                                  "column": 34
                                                },
                                                "end": {
                                                  "line": 477,
                                                  "column": 35
                                                }
                                              },
                                              "value": 1,
                                              "rawValue": 1,
                                              "raw": "1"
                                            },
                                            "computed": true
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 18039,
                                            "end": 18047,
                                            "loc": {
                                              "start": {
                                                "line": 477,
                                                "column": 37
                                              },
                                              "end": {
                                                "line": 477,
                                                "column": 45
                                              }
                                            },
                                            "name": "position"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 18048,
                                          "end": 18053,
                                          "loc": {
                                            "start": {
                                              "line": 477,
                                              "column": 46
                                            },
                                            "end": {
                                              "line": 477,
                                              "column": 51
                                            }
                                          },
                                          "name": "clone"
                                        },
                                        "computed": false
                                      },
                                      "arguments": []
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 18056,
                                      "end": 18059,
                                      "loc": {
                                        "start": {
                                          "line": 477,
                                          "column": 54
                                        },
                                        "end": {
                                          "line": 477,
                                          "column": 57
                                        }
                                      },
                                      "name": "sub"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "MemberExpression",
                                      "start": 18060,
                                      "end": 18083,
                                      "loc": {
                                        "start": {
                                          "line": 477,
                                          "column": 58
                                        },
                                        "end": {
                                          "line": 477,
                                          "column": 81
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 18060,
                                        "end": 18074,
                                        "loc": {
                                          "start": {
                                            "line": 477,
                                            "column": 58
                                          },
                                          "end": {
                                            "line": 477,
                                            "column": 72
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 18060,
                                          "end": 18071,
                                          "loc": {
                                            "start": {
                                              "line": 477,
                                              "column": 58
                                            },
                                            "end": {
                                              "line": 477,
                                              "column": 69
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 18060,
                                            "end": 18064,
                                            "loc": {
                                              "start": {
                                                "line": 477,
                                                "column": 58
                                              },
                                              "end": {
                                                "line": 477,
                                                "column": 62
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 18065,
                                            "end": 18071,
                                            "loc": {
                                              "start": {
                                                "line": 477,
                                                "column": 63
                                              },
                                              "end": {
                                                "line": 477,
                                                "column": 69
                                              }
                                            },
                                            "name": "points"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Literal",
                                          "start": 18072,
                                          "end": 18073,
                                          "loc": {
                                            "start": {
                                              "line": 477,
                                              "column": 70
                                            },
                                            "end": {
                                              "line": 477,
                                              "column": 71
                                            }
                                          },
                                          "value": 0,
                                          "rawValue": 0,
                                          "raw": "0"
                                        },
                                        "computed": true
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 18075,
                                        "end": 18083,
                                        "loc": {
                                          "start": {
                                            "line": 477,
                                            "column": 73
                                          },
                                          "end": {
                                            "line": 477,
                                            "column": 81
                                          }
                                        },
                                        "name": "position"
                                      },
                                      "computed": false
                                    }
                                  ]
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 18098,
                            "end": 18176,
                            "loc": {
                              "start": {
                                "line": 478,
                                "column": 12
                              },
                              "end": {
                                "line": 478,
                                "column": 90
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 18102,
                                "end": 18175,
                                "loc": {
                                  "start": {
                                    "line": 478,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 478,
                                    "column": 89
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 18102,
                                  "end": 18105,
                                  "loc": {
                                    "start": {
                                      "line": 478,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 478,
                                      "column": 19
                                    }
                                  },
                                  "name": "per"
                                },
                                "init": {
                                  "type": "CallExpression",
                                  "start": 18108,
                                  "end": 18175,
                                  "loc": {
                                    "start": {
                                      "line": 478,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 478,
                                      "column": 89
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 18108,
                                    "end": 18134,
                                    "loc": {
                                      "start": {
                                        "line": 478,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 478,
                                        "column": 48
                                      }
                                    },
                                    "object": {
                                      "type": "CallExpression",
                                      "start": 18108,
                                      "end": 18119,
                                      "loc": {
                                        "start": {
                                          "line": 478,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 478,
                                          "column": 33
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 18108,
                                        "end": 18117,
                                        "loc": {
                                          "start": {
                                            "line": 478,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 478,
                                            "column": 31
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 18108,
                                          "end": 18111,
                                          "loc": {
                                            "start": {
                                              "line": 478,
                                              "column": 22
                                            },
                                            "end": {
                                              "line": 478,
                                              "column": 25
                                            }
                                          },
                                          "name": "dir"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 18112,
                                          "end": 18117,
                                          "loc": {
                                            "start": {
                                              "line": 478,
                                              "column": 26
                                            },
                                            "end": {
                                              "line": 478,
                                              "column": 31
                                            }
                                          },
                                          "name": "clone"
                                        },
                                        "computed": false
                                      },
                                      "arguments": []
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 18120,
                                      "end": 18134,
                                      "loc": {
                                        "start": {
                                          "line": 478,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 478,
                                          "column": 48
                                        }
                                      },
                                      "name": "applyAxisAngle"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "NewExpression",
                                      "start": 18135,
                                      "end": 18161,
                                      "loc": {
                                        "start": {
                                          "line": 478,
                                          "column": 49
                                        },
                                        "end": {
                                          "line": 478,
                                          "column": 75
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 18139,
                                        "end": 18152,
                                        "loc": {
                                          "start": {
                                            "line": 478,
                                            "column": 53
                                          },
                                          "end": {
                                            "line": 478,
                                            "column": 66
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 18139,
                                          "end": 18144,
                                          "loc": {
                                            "start": {
                                              "line": 478,
                                              "column": 53
                                            },
                                            "end": {
                                              "line": 478,
                                              "column": 58
                                            }
                                          },
                                          "name": "THREE"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 18145,
                                          "end": 18152,
                                          "loc": {
                                            "start": {
                                              "line": 478,
                                              "column": 59
                                            },
                                            "end": {
                                              "line": 478,
                                              "column": 66
                                            }
                                          },
                                          "name": "Vector3"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Literal",
                                          "start": 18153,
                                          "end": 18154,
                                          "loc": {
                                            "start": {
                                              "line": 478,
                                              "column": 67
                                            },
                                            "end": {
                                              "line": 478,
                                              "column": 68
                                            }
                                          },
                                          "value": 0,
                                          "rawValue": 0,
                                          "raw": "0"
                                        },
                                        {
                                          "type": "Literal",
                                          "start": 18156,
                                          "end": 18157,
                                          "loc": {
                                            "start": {
                                              "line": 478,
                                              "column": 70
                                            },
                                            "end": {
                                              "line": 478,
                                              "column": 71
                                            }
                                          },
                                          "value": 0,
                                          "rawValue": 0,
                                          "raw": "0"
                                        },
                                        {
                                          "type": "Literal",
                                          "start": 18159,
                                          "end": 18160,
                                          "loc": {
                                            "start": {
                                              "line": 478,
                                              "column": 73
                                            },
                                            "end": {
                                              "line": 478,
                                              "column": 74
                                            }
                                          },
                                          "value": 1,
                                          "rawValue": 1,
                                          "raw": "1"
                                        }
                                      ]
                                    },
                                    {
                                      "type": "BinaryExpression",
                                      "start": 18163,
                                      "end": 18174,
                                      "loc": {
                                        "start": {
                                          "line": 478,
                                          "column": 77
                                        },
                                        "end": {
                                          "line": 478,
                                          "column": 88
                                        }
                                      },
                                      "left": {
                                        "type": "MemberExpression",
                                        "start": 18163,
                                        "end": 18170,
                                        "loc": {
                                          "start": {
                                            "line": 478,
                                            "column": 77
                                          },
                                          "end": {
                                            "line": 478,
                                            "column": 84
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 18163,
                                          "end": 18167,
                                          "loc": {
                                            "start": {
                                              "line": 478,
                                              "column": 77
                                            },
                                            "end": {
                                              "line": 478,
                                              "column": 81
                                            }
                                          },
                                          "name": "Math"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 18168,
                                          "end": 18170,
                                          "loc": {
                                            "start": {
                                              "line": 478,
                                              "column": 82
                                            },
                                            "end": {
                                              "line": 478,
                                              "column": 84
                                            }
                                          },
                                          "name": "PI"
                                        },
                                        "computed": false
                                      },
                                      "operator": "/",
                                      "right": {
                                        "type": "Literal",
                                        "start": 18173,
                                        "end": 18174,
                                        "loc": {
                                          "start": {
                                            "line": 478,
                                            "column": 87
                                          },
                                          "end": {
                                            "line": 478,
                                            "column": 88
                                          }
                                        },
                                        "value": 2,
                                        "rawValue": 2,
                                        "raw": "2"
                                      }
                                    }
                                  ]
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 18189,
                            "end": 18248,
                            "loc": {
                              "start": {
                                "line": 479,
                                "column": 12
                              },
                              "end": {
                                "line": 479,
                                "column": 71
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 18193,
                                "end": 18247,
                                "loc": {
                                  "start": {
                                    "line": 479,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 479,
                                    "column": 70
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 18193,
                                  "end": 18202,
                                  "loc": {
                                    "start": {
                                      "line": 479,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 479,
                                      "column": 25
                                    }
                                  },
                                  "name": "dirMidPos"
                                },
                                "init": {
                                  "type": "CallExpression",
                                  "start": 18205,
                                  "end": 18247,
                                  "loc": {
                                    "start": {
                                      "line": 479,
                                      "column": 28
                                    },
                                    "end": {
                                      "line": 479,
                                      "column": 70
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 18205,
                                    "end": 18242,
                                    "loc": {
                                      "start": {
                                        "line": 479,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 479,
                                        "column": 65
                                      }
                                    },
                                    "object": {
                                      "type": "CallExpression",
                                      "start": 18205,
                                      "end": 18238,
                                      "loc": {
                                        "start": {
                                          "line": 479,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 479,
                                          "column": 61
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 18205,
                                        "end": 18236,
                                        "loc": {
                                          "start": {
                                            "line": 479,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 479,
                                            "column": 59
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 18205,
                                          "end": 18230,
                                          "loc": {
                                            "start": {
                                              "line": 479,
                                              "column": 28
                                            },
                                            "end": {
                                              "line": 479,
                                              "column": 53
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 18205,
                                            "end": 18221,
                                            "loc": {
                                              "start": {
                                                "line": 479,
                                                "column": 28
                                              },
                                              "end": {
                                                "line": 479,
                                                "column": 44
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 18205,
                                              "end": 18209,
                                              "loc": {
                                                "start": {
                                                  "line": 479,
                                                  "column": 28
                                                },
                                                "end": {
                                                  "line": 479,
                                                  "column": 32
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 18210,
                                              "end": 18221,
                                              "loc": {
                                                "start": {
                                                  "line": 479,
                                                  "column": 33
                                                },
                                                "end": {
                                                  "line": 479,
                                                  "column": 44
                                                }
                                              },
                                              "name": "centerPoint"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 18222,
                                            "end": 18230,
                                            "loc": {
                                              "start": {
                                                "line": 479,
                                                "column": 45
                                              },
                                              "end": {
                                                "line": 479,
                                                "column": 53
                                              }
                                            },
                                            "name": "position"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 18231,
                                          "end": 18236,
                                          "loc": {
                                            "start": {
                                              "line": 479,
                                              "column": 54
                                            },
                                            "end": {
                                              "line": 479,
                                              "column": 59
                                            }
                                          },
                                          "name": "clone"
                                        },
                                        "computed": false
                                      },
                                      "arguments": []
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 18239,
                                      "end": 18242,
                                      "loc": {
                                        "start": {
                                          "line": 479,
                                          "column": 62
                                        },
                                        "end": {
                                          "line": 479,
                                          "column": 65
                                        }
                                      },
                                      "name": "sub"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 18243,
                                      "end": 18246,
                                      "loc": {
                                        "start": {
                                          "line": 479,
                                          "column": 66
                                        },
                                        "end": {
                                          "line": 479,
                                          "column": 69
                                        }
                                      },
                                      "name": "mid"
                                    }
                                  ]
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 18261,
                            "end": 18322,
                            "loc": {
                              "start": {
                                "line": 480,
                                "column": 12
                              },
                              "end": {
                                "line": 480,
                                "column": 73
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 18265,
                                "end": 18321,
                                "loc": {
                                  "start": {
                                    "line": 480,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 480,
                                    "column": 72
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 18265,
                                  "end": 18271,
                                  "loc": {
                                    "start": {
                                      "line": 480,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 480,
                                      "column": 22
                                    }
                                  },
                                  "name": "newPos"
                                },
                                "init": {
                                  "type": "CallExpression",
                                  "start": 18274,
                                  "end": 18321,
                                  "loc": {
                                    "start": {
                                      "line": 480,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 480,
                                      "column": 72
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 18274,
                                    "end": 18316,
                                    "loc": {
                                      "start": {
                                        "line": 480,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 480,
                                        "column": 67
                                      }
                                    },
                                    "object": {
                                      "type": "CallExpression",
                                      "start": 18274,
                                      "end": 18312,
                                      "loc": {
                                        "start": {
                                          "line": 480,
                                          "column": 25
                                        },
                                        "end": {
                                          "line": 480,
                                          "column": 63
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 18274,
                                        "end": 18307,
                                        "loc": {
                                          "start": {
                                            "line": 480,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 480,
                                            "column": 58
                                          }
                                        },
                                        "object": {
                                          "type": "CallExpression",
                                          "start": 18274,
                                          "end": 18291,
                                          "loc": {
                                            "start": {
                                              "line": 480,
                                              "column": 25
                                            },
                                            "end": {
                                              "line": 480,
                                              "column": 42
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 18274,
                                            "end": 18289,
                                            "loc": {
                                              "start": {
                                                "line": 480,
                                                "column": 25
                                              },
                                              "end": {
                                                "line": 480,
                                                "column": 40
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 18274,
                                              "end": 18283,
                                              "loc": {
                                                "start": {
                                                  "line": 480,
                                                  "column": 25
                                                },
                                                "end": {
                                                  "line": 480,
                                                  "column": 34
                                                }
                                              },
                                              "name": "dirMidPos"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 18284,
                                              "end": 18289,
                                              "loc": {
                                                "start": {
                                                  "line": 480,
                                                  "column": 35
                                                },
                                                "end": {
                                                  "line": 480,
                                                  "column": 40
                                                }
                                              },
                                              "name": "clone"
                                            },
                                            "computed": false
                                          },
                                          "arguments": []
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 18292,
                                          "end": 18307,
                                          "loc": {
                                            "start": {
                                              "line": 480,
                                              "column": 43
                                            },
                                            "end": {
                                              "line": 480,
                                              "column": 58
                                            }
                                          },
                                          "name": "projectOnVector"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 18308,
                                          "end": 18311,
                                          "loc": {
                                            "start": {
                                              "line": 480,
                                              "column": 59
                                            },
                                            "end": {
                                              "line": 480,
                                              "column": 62
                                            }
                                          },
                                          "name": "per"
                                        }
                                      ]
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 18313,
                                      "end": 18316,
                                      "loc": {
                                        "start": {
                                          "line": 480,
                                          "column": 64
                                        },
                                        "end": {
                                          "line": 480,
                                          "column": 67
                                        }
                                      },
                                      "name": "add"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 18317,
                                      "end": 18320,
                                      "loc": {
                                        "start": {
                                          "line": 480,
                                          "column": 68
                                        },
                                        "end": {
                                          "line": 480,
                                          "column": 71
                                        }
                                      },
                                      "name": "mid"
                                    }
                                  ]
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 18335,
                            "end": 18395,
                            "loc": {
                              "start": {
                                "line": 481,
                                "column": 12
                              },
                              "end": {
                                "line": 481,
                                "column": 72
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 18335,
                              "end": 18394,
                              "loc": {
                                "start": {
                                  "line": 481,
                                  "column": 12
                                },
                                "end": {
                                  "line": 481,
                                  "column": 71
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 18335,
                                "end": 18364,
                                "loc": {
                                  "start": {
                                    "line": 481,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 481,
                                    "column": 41
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 18335,
                                  "end": 18360,
                                  "loc": {
                                    "start": {
                                      "line": 481,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 481,
                                      "column": 37
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 18335,
                                    "end": 18351,
                                    "loc": {
                                      "start": {
                                        "line": 481,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 481,
                                        "column": 28
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 18335,
                                      "end": 18339,
                                      "loc": {
                                        "start": {
                                          "line": 481,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 481,
                                          "column": 16
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 18340,
                                      "end": 18351,
                                      "loc": {
                                        "start": {
                                          "line": 481,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 481,
                                          "column": 28
                                        }
                                      },
                                      "name": "centerPoint"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 18352,
                                    "end": 18360,
                                    "loc": {
                                      "start": {
                                        "line": 481,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 481,
                                        "column": 37
                                      }
                                    },
                                    "name": "position"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 18361,
                                  "end": 18364,
                                  "loc": {
                                    "start": {
                                      "line": 481,
                                      "column": 38
                                    },
                                    "end": {
                                      "line": 481,
                                      "column": 41
                                    }
                                  },
                                  "name": "set"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 18365,
                                  "end": 18373,
                                  "loc": {
                                    "start": {
                                      "line": 481,
                                      "column": 42
                                    },
                                    "end": {
                                      "line": 481,
                                      "column": 50
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 18365,
                                    "end": 18371,
                                    "loc": {
                                      "start": {
                                        "line": 481,
                                        "column": 42
                                      },
                                      "end": {
                                        "line": 481,
                                        "column": 48
                                      }
                                    },
                                    "name": "newPos"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 18372,
                                    "end": 18373,
                                    "loc": {
                                      "start": {
                                        "line": 481,
                                        "column": 49
                                      },
                                      "end": {
                                        "line": 481,
                                        "column": 50
                                      }
                                    },
                                    "name": "x"
                                  },
                                  "computed": false
                                },
                                {
                                  "type": "MemberExpression",
                                  "start": 18375,
                                  "end": 18383,
                                  "loc": {
                                    "start": {
                                      "line": 481,
                                      "column": 52
                                    },
                                    "end": {
                                      "line": 481,
                                      "column": 60
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 18375,
                                    "end": 18381,
                                    "loc": {
                                      "start": {
                                        "line": 481,
                                        "column": 52
                                      },
                                      "end": {
                                        "line": 481,
                                        "column": 58
                                      }
                                    },
                                    "name": "newPos"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 18382,
                                    "end": 18383,
                                    "loc": {
                                      "start": {
                                        "line": 481,
                                        "column": 59
                                      },
                                      "end": {
                                        "line": 481,
                                        "column": 60
                                      }
                                    },
                                    "name": "y"
                                  },
                                  "computed": false
                                },
                                {
                                  "type": "MemberExpression",
                                  "start": 18385,
                                  "end": 18393,
                                  "loc": {
                                    "start": {
                                      "line": 481,
                                      "column": 62
                                    },
                                    "end": {
                                      "line": 481,
                                      "column": 70
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 18385,
                                    "end": 18391,
                                    "loc": {
                                      "start": {
                                        "line": 481,
                                        "column": 62
                                      },
                                      "end": {
                                        "line": 481,
                                        "column": 68
                                      }
                                    },
                                    "name": "newPos"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 18392,
                                    "end": 18393,
                                    "loc": {
                                      "start": {
                                        "line": 481,
                                        "column": 69
                                      },
                                      "end": {
                                        "line": 481,
                                        "column": 70
                                      }
                                    },
                                    "name": "z"
                                  },
                                  "computed": false
                                }
                              ]
                            }
                          }
                        ]
                      },
                      "alternate": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 18415,
                      "end": 18491,
                      "loc": {
                        "start": {
                          "line": 484,
                          "column": 8
                        },
                        "end": {
                          "line": 484,
                          "column": 84
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 18419,
                          "end": 18490,
                          "loc": {
                            "start": {
                              "line": 484,
                              "column": 12
                            },
                            "end": {
                              "line": 484,
                              "column": 83
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 18419,
                            "end": 18426,
                            "loc": {
                              "start": {
                                "line": 484,
                                "column": 12
                              },
                              "end": {
                                "line": 484,
                                "column": 19
                              }
                            },
                            "name": "radius0"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 18429,
                            "end": 18490,
                            "loc": {
                              "start": {
                                "line": 484,
                                "column": 22
                              },
                              "end": {
                                "line": 484,
                                "column": 83
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 18429,
                              "end": 18463,
                              "loc": {
                                "start": {
                                  "line": 484,
                                  "column": 22
                                },
                                "end": {
                                  "line": 484,
                                  "column": 56
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 18429,
                                "end": 18452,
                                "loc": {
                                  "start": {
                                    "line": 484,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 484,
                                    "column": 45
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 18429,
                                  "end": 18443,
                                  "loc": {
                                    "start": {
                                      "line": 484,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 484,
                                      "column": 36
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 18429,
                                    "end": 18440,
                                    "loc": {
                                      "start": {
                                        "line": 484,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 484,
                                        "column": 33
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 18429,
                                      "end": 18433,
                                      "loc": {
                                        "start": {
                                          "line": 484,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 484,
                                          "column": 26
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 18434,
                                      "end": 18440,
                                      "loc": {
                                        "start": {
                                          "line": 484,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 484,
                                          "column": 33
                                        }
                                      },
                                      "name": "points"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Literal",
                                    "start": 18441,
                                    "end": 18442,
                                    "loc": {
                                      "start": {
                                        "line": 484,
                                        "column": 34
                                      },
                                      "end": {
                                        "line": 484,
                                        "column": 35
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 18444,
                                  "end": 18452,
                                  "loc": {
                                    "start": {
                                      "line": 484,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 484,
                                      "column": 45
                                    }
                                  },
                                  "name": "position"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 18453,
                                "end": 18463,
                                "loc": {
                                  "start": {
                                    "line": 484,
                                    "column": 46
                                  },
                                  "end": {
                                    "line": 484,
                                    "column": 56
                                  }
                                },
                                "name": "distanceTo"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 18464,
                                "end": 18489,
                                "loc": {
                                  "start": {
                                    "line": 484,
                                    "column": 57
                                  },
                                  "end": {
                                    "line": 484,
                                    "column": 82
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 18464,
                                  "end": 18480,
                                  "loc": {
                                    "start": {
                                      "line": 484,
                                      "column": 57
                                    },
                                    "end": {
                                      "line": 484,
                                      "column": 73
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 18464,
                                    "end": 18468,
                                    "loc": {
                                      "start": {
                                        "line": 484,
                                        "column": 57
                                      },
                                      "end": {
                                        "line": 484,
                                        "column": 61
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 18469,
                                    "end": 18480,
                                    "loc": {
                                      "start": {
                                        "line": 484,
                                        "column": 62
                                      },
                                      "end": {
                                        "line": 484,
                                        "column": 73
                                      }
                                    },
                                    "name": "centerPoint"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 18481,
                                  "end": 18489,
                                  "loc": {
                                    "start": {
                                      "line": 484,
                                      "column": 74
                                    },
                                    "end": {
                                      "line": 484,
                                      "column": 82
                                    }
                                  },
                                  "name": "position"
                                },
                                "computed": false
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 18500,
                      "end": 18576,
                      "loc": {
                        "start": {
                          "line": 485,
                          "column": 8
                        },
                        "end": {
                          "line": 485,
                          "column": 84
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 18504,
                          "end": 18575,
                          "loc": {
                            "start": {
                              "line": 485,
                              "column": 12
                            },
                            "end": {
                              "line": 485,
                              "column": 83
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 18504,
                            "end": 18511,
                            "loc": {
                              "start": {
                                "line": 485,
                                "column": 12
                              },
                              "end": {
                                "line": 485,
                                "column": 19
                              }
                            },
                            "name": "radius1"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 18514,
                            "end": 18575,
                            "loc": {
                              "start": {
                                "line": 485,
                                "column": 22
                              },
                              "end": {
                                "line": 485,
                                "column": 83
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 18514,
                              "end": 18548,
                              "loc": {
                                "start": {
                                  "line": 485,
                                  "column": 22
                                },
                                "end": {
                                  "line": 485,
                                  "column": 56
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 18514,
                                "end": 18537,
                                "loc": {
                                  "start": {
                                    "line": 485,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 485,
                                    "column": 45
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 18514,
                                  "end": 18528,
                                  "loc": {
                                    "start": {
                                      "line": 485,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 485,
                                      "column": 36
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 18514,
                                    "end": 18525,
                                    "loc": {
                                      "start": {
                                        "line": 485,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 485,
                                        "column": 33
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 18514,
                                      "end": 18518,
                                      "loc": {
                                        "start": {
                                          "line": 485,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 485,
                                          "column": 26
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 18519,
                                      "end": 18525,
                                      "loc": {
                                        "start": {
                                          "line": 485,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 485,
                                          "column": 33
                                        }
                                      },
                                      "name": "points"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Literal",
                                    "start": 18526,
                                    "end": 18527,
                                    "loc": {
                                      "start": {
                                        "line": 485,
                                        "column": 34
                                      },
                                      "end": {
                                        "line": 485,
                                        "column": 35
                                      }
                                    },
                                    "value": 1,
                                    "rawValue": 1,
                                    "raw": "1"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 18529,
                                  "end": 18537,
                                  "loc": {
                                    "start": {
                                      "line": 485,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 485,
                                      "column": 45
                                    }
                                  },
                                  "name": "position"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 18538,
                                "end": 18548,
                                "loc": {
                                  "start": {
                                    "line": 485,
                                    "column": 46
                                  },
                                  "end": {
                                    "line": 485,
                                    "column": 56
                                  }
                                },
                                "name": "distanceTo"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 18549,
                                "end": 18574,
                                "loc": {
                                  "start": {
                                    "line": 485,
                                    "column": 57
                                  },
                                  "end": {
                                    "line": 485,
                                    "column": 82
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 18549,
                                  "end": 18565,
                                  "loc": {
                                    "start": {
                                      "line": 485,
                                      "column": 57
                                    },
                                    "end": {
                                      "line": 485,
                                      "column": 73
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 18549,
                                    "end": 18553,
                                    "loc": {
                                      "start": {
                                        "line": 485,
                                        "column": 57
                                      },
                                      "end": {
                                        "line": 485,
                                        "column": 61
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 18554,
                                    "end": 18565,
                                    "loc": {
                                      "start": {
                                        "line": 485,
                                        "column": 62
                                      },
                                      "end": {
                                        "line": 485,
                                        "column": 73
                                      }
                                    },
                                    "name": "centerPoint"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 18566,
                                  "end": 18574,
                                  "loc": {
                                    "start": {
                                      "line": 485,
                                      "column": 74
                                    },
                                    "end": {
                                      "line": 485,
                                      "column": 82
                                    }
                                  },
                                  "name": "position"
                                },
                                "computed": false
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 18585,
                      "end": 18801,
                      "loc": {
                        "start": {
                          "line": 486,
                          "column": 8
                        },
                        "end": {
                          "line": 491,
                          "column": 50
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 18589,
                        "end": 18618,
                        "loc": {
                          "start": {
                            "line": 486,
                            "column": 12
                          },
                          "end": {
                            "line": 486,
                            "column": 41
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 18589,
                          "end": 18599,
                          "loc": {
                            "start": {
                              "line": 486,
                              "column": 12
                            },
                            "end": {
                              "line": 486,
                              "column": 22
                            }
                          },
                          "name": "movedPoint"
                        },
                        "operator": "===",
                        "right": {
                          "type": "MemberExpression",
                          "start": 18604,
                          "end": 18618,
                          "loc": {
                            "start": {
                              "line": 486,
                              "column": 27
                            },
                            "end": {
                              "line": 486,
                              "column": 41
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 18604,
                            "end": 18615,
                            "loc": {
                              "start": {
                                "line": 486,
                                "column": 27
                              },
                              "end": {
                                "line": 486,
                                "column": 38
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 18604,
                              "end": 18608,
                              "loc": {
                                "start": {
                                  "line": 486,
                                  "column": 27
                                },
                                "end": {
                                  "line": 486,
                                  "column": 31
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 18609,
                              "end": 18615,
                              "loc": {
                                "start": {
                                  "line": 486,
                                  "column": 32
                                },
                                "end": {
                                  "line": 486,
                                  "column": 38
                                }
                              },
                              "name": "points"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Literal",
                            "start": 18616,
                            "end": 18617,
                            "loc": {
                              "start": {
                                "line": 486,
                                "column": 39
                              },
                              "end": {
                                "line": 486,
                                "column": 40
                              }
                            },
                            "value": 0,
                            "rawValue": 0,
                            "raw": "0"
                          },
                          "computed": true
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 18632,
                        "end": 18654,
                        "loc": {
                          "start": {
                            "line": 487,
                            "column": 12
                          },
                          "end": {
                            "line": 487,
                            "column": 34
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 18632,
                          "end": 18653,
                          "loc": {
                            "start": {
                              "line": 487,
                              "column": 12
                            },
                            "end": {
                              "line": 487,
                              "column": 33
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "MemberExpression",
                            "start": 18632,
                            "end": 18643,
                            "loc": {
                              "start": {
                                "line": 487,
                                "column": 12
                              },
                              "end": {
                                "line": 487,
                                "column": 23
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 18632,
                              "end": 18636,
                              "loc": {
                                "start": {
                                  "line": 487,
                                  "column": 12
                                },
                                "end": {
                                  "line": 487,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 18637,
                              "end": 18643,
                              "loc": {
                                "start": {
                                  "line": 487,
                                  "column": 17
                                },
                                "end": {
                                  "line": 487,
                                  "column": 23
                                }
                              },
                              "name": "radius"
                            },
                            "computed": false
                          },
                          "right": {
                            "type": "Identifier",
                            "start": 18646,
                            "end": 18653,
                            "loc": {
                              "start": {
                                "line": 487,
                                "column": 26
                              },
                              "end": {
                                "line": 487,
                                "column": 33
                              }
                            },
                            "name": "radius1"
                          }
                        }
                      },
                      "alternate": {
                        "type": "IfStatement",
                        "start": 18668,
                        "end": 18801,
                        "loc": {
                          "start": {
                            "line": 488,
                            "column": 13
                          },
                          "end": {
                            "line": 491,
                            "column": 50
                          }
                        },
                        "test": {
                          "type": "BinaryExpression",
                          "start": 18672,
                          "end": 18701,
                          "loc": {
                            "start": {
                              "line": 488,
                              "column": 17
                            },
                            "end": {
                              "line": 488,
                              "column": 46
                            }
                          },
                          "left": {
                            "type": "Identifier",
                            "start": 18672,
                            "end": 18682,
                            "loc": {
                              "start": {
                                "line": 488,
                                "column": 17
                              },
                              "end": {
                                "line": 488,
                                "column": 27
                              }
                            },
                            "name": "movedPoint"
                          },
                          "operator": "===",
                          "right": {
                            "type": "MemberExpression",
                            "start": 18687,
                            "end": 18701,
                            "loc": {
                              "start": {
                                "line": 488,
                                "column": 32
                              },
                              "end": {
                                "line": 488,
                                "column": 46
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 18687,
                              "end": 18698,
                              "loc": {
                                "start": {
                                  "line": 488,
                                  "column": 32
                                },
                                "end": {
                                  "line": 488,
                                  "column": 43
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 18687,
                                "end": 18691,
                                "loc": {
                                  "start": {
                                    "line": 488,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 488,
                                    "column": 36
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 18692,
                                "end": 18698,
                                "loc": {
                                  "start": {
                                    "line": 488,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 488,
                                    "column": 43
                                  }
                                },
                                "name": "points"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Literal",
                              "start": 18699,
                              "end": 18700,
                              "loc": {
                                "start": {
                                  "line": 488,
                                  "column": 44
                                },
                                "end": {
                                  "line": 488,
                                  "column": 45
                                }
                              },
                              "value": 1,
                              "rawValue": 1,
                              "raw": "1"
                            },
                            "computed": true
                          }
                        },
                        "consequent": {
                          "type": "ExpressionStatement",
                          "start": 18715,
                          "end": 18737,
                          "loc": {
                            "start": {
                              "line": 489,
                              "column": 12
                            },
                            "end": {
                              "line": 489,
                              "column": 34
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 18715,
                            "end": 18736,
                            "loc": {
                              "start": {
                                "line": 489,
                                "column": 12
                              },
                              "end": {
                                "line": 489,
                                "column": 33
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "MemberExpression",
                              "start": 18715,
                              "end": 18726,
                              "loc": {
                                "start": {
                                  "line": 489,
                                  "column": 12
                                },
                                "end": {
                                  "line": 489,
                                  "column": 23
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 18715,
                                "end": 18719,
                                "loc": {
                                  "start": {
                                    "line": 489,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 489,
                                    "column": 16
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 18720,
                                "end": 18726,
                                "loc": {
                                  "start": {
                                    "line": 489,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 489,
                                    "column": 23
                                  }
                                },
                                "name": "radius"
                              },
                              "computed": false
                            },
                            "right": {
                              "type": "Identifier",
                              "start": 18729,
                              "end": 18736,
                              "loc": {
                                "start": {
                                  "line": 489,
                                  "column": 26
                                },
                                "end": {
                                  "line": 489,
                                  "column": 33
                                }
                              },
                              "name": "radius0"
                            }
                          }
                        },
                        "alternate": {
                          "type": "ExpressionStatement",
                          "start": 18763,
                          "end": 18801,
                          "loc": {
                            "start": {
                              "line": 491,
                              "column": 12
                            },
                            "end": {
                              "line": 491,
                              "column": 50
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 18763,
                            "end": 18800,
                            "loc": {
                              "start": {
                                "line": 491,
                                "column": 12
                              },
                              "end": {
                                "line": 491,
                                "column": 49
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "MemberExpression",
                              "start": 18763,
                              "end": 18774,
                              "loc": {
                                "start": {
                                  "line": 491,
                                  "column": 12
                                },
                                "end": {
                                  "line": 491,
                                  "column": 23
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 18763,
                                "end": 18767,
                                "loc": {
                                  "start": {
                                    "line": 491,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 491,
                                    "column": 16
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 18768,
                                "end": 18774,
                                "loc": {
                                  "start": {
                                    "line": 491,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 491,
                                    "column": 23
                                  }
                                },
                                "name": "radius"
                              },
                              "computed": false
                            },
                            "right": {
                              "type": "BinaryExpression",
                              "start": 18777,
                              "end": 18800,
                              "loc": {
                                "start": {
                                  "line": 491,
                                  "column": 26
                                },
                                "end": {
                                  "line": 491,
                                  "column": 49
                                }
                              },
                              "left": {
                                "type": "BinaryExpression",
                                "start": 18778,
                                "end": 18795,
                                "loc": {
                                  "start": {
                                    "line": 491,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 491,
                                    "column": 44
                                  }
                                },
                                "left": {
                                  "type": "Identifier",
                                  "start": 18778,
                                  "end": 18785,
                                  "loc": {
                                    "start": {
                                      "line": 491,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 491,
                                      "column": 34
                                    }
                                  },
                                  "name": "radius0"
                                },
                                "operator": "+",
                                "right": {
                                  "type": "Identifier",
                                  "start": 18788,
                                  "end": 18795,
                                  "loc": {
                                    "start": {
                                      "line": 491,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 491,
                                      "column": 44
                                    }
                                  },
                                  "name": "radius1"
                                },
                                "parenthesizedExpression": true
                              },
                              "operator": "/",
                              "right": {
                                "type": "Literal",
                                "start": 18799,
                                "end": 18800,
                                "loc": {
                                  "start": {
                                    "line": 491,
                                    "column": 48
                                  },
                                  "end": {
                                    "line": 491,
                                    "column": 49
                                  }
                                },
                                "value": 2,
                                "rawValue": 2,
                                "raw": "2"
                              }
                            }
                          }
                        }
                      }
                    },
                    {
                      "type": "IfStatement",
                      "start": 18810,
                      "end": 18966,
                      "loc": {
                        "start": {
                          "line": 492,
                          "column": 8
                        },
                        "end": {
                          "line": 493,
                          "column": 121
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 18814,
                        "end": 18843,
                        "loc": {
                          "start": {
                            "line": 492,
                            "column": 12
                          },
                          "end": {
                            "line": 492,
                            "column": 41
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 18814,
                          "end": 18824,
                          "loc": {
                            "start": {
                              "line": 492,
                              "column": 12
                            },
                            "end": {
                              "line": 492,
                              "column": 22
                            }
                          },
                          "name": "movedPoint"
                        },
                        "operator": "===",
                        "right": {
                          "type": "MemberExpression",
                          "start": 18829,
                          "end": 18843,
                          "loc": {
                            "start": {
                              "line": 492,
                              "column": 27
                            },
                            "end": {
                              "line": 492,
                              "column": 41
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 18829,
                            "end": 18840,
                            "loc": {
                              "start": {
                                "line": 492,
                                "column": 27
                              },
                              "end": {
                                "line": 492,
                                "column": 38
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 18829,
                              "end": 18833,
                              "loc": {
                                "start": {
                                  "line": 492,
                                  "column": 27
                                },
                                "end": {
                                  "line": 492,
                                  "column": 31
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 18834,
                              "end": 18840,
                              "loc": {
                                "start": {
                                  "line": 492,
                                  "column": 32
                                },
                                "end": {
                                  "line": 492,
                                  "column": 38
                                }
                              },
                              "name": "points"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Literal",
                            "start": 18841,
                            "end": 18842,
                            "loc": {
                              "start": {
                                "line": 492,
                                "column": 39
                              },
                              "end": {
                                "line": 492,
                                "column": 40
                              }
                            },
                            "value": 0,
                            "rawValue": 0,
                            "raw": "0"
                          },
                          "computed": true
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 18857,
                        "end": 18966,
                        "loc": {
                          "start": {
                            "line": 493,
                            "column": 12
                          },
                          "end": {
                            "line": 493,
                            "column": 121
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 18857,
                          "end": 18965,
                          "loc": {
                            "start": {
                              "line": 493,
                              "column": 12
                            },
                            "end": {
                              "line": 493,
                              "column": 120
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 18857,
                            "end": 18938,
                            "loc": {
                              "start": {
                                "line": 493,
                                "column": 12
                              },
                              "end": {
                                "line": 493,
                                "column": 93
                              }
                            },
                            "object": {
                              "type": "CallExpression",
                              "start": 18857,
                              "end": 18934,
                              "loc": {
                                "start": {
                                  "line": 493,
                                  "column": 12
                                },
                                "end": {
                                  "line": 493,
                                  "column": 89
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 18857,
                                "end": 18921,
                                "loc": {
                                  "start": {
                                    "line": 493,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 493,
                                    "column": 76
                                  }
                                },
                                "object": {
                                  "type": "CallExpression",
                                  "start": 18857,
                                  "end": 18911,
                                  "loc": {
                                    "start": {
                                      "line": 493,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 493,
                                      "column": 66
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 18857,
                                    "end": 18884,
                                    "loc": {
                                      "start": {
                                        "line": 493,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 493,
                                        "column": 39
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 18857,
                                      "end": 18880,
                                      "loc": {
                                        "start": {
                                          "line": 493,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 493,
                                          "column": 35
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 18857,
                                        "end": 18871,
                                        "loc": {
                                          "start": {
                                            "line": 493,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 493,
                                            "column": 26
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 18857,
                                          "end": 18868,
                                          "loc": {
                                            "start": {
                                              "line": 493,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 493,
                                              "column": 23
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 18857,
                                            "end": 18861,
                                            "loc": {
                                              "start": {
                                                "line": 493,
                                                "column": 12
                                              },
                                              "end": {
                                                "line": 493,
                                                "column": 16
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 18862,
                                            "end": 18868,
                                            "loc": {
                                              "start": {
                                                "line": 493,
                                                "column": 17
                                              },
                                              "end": {
                                                "line": 493,
                                                "column": 23
                                              }
                                            },
                                            "name": "points"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Literal",
                                          "start": 18869,
                                          "end": 18870,
                                          "loc": {
                                            "start": {
                                              "line": 493,
                                              "column": 24
                                            },
                                            "end": {
                                              "line": 493,
                                              "column": 25
                                            }
                                          },
                                          "value": 0,
                                          "rawValue": 0,
                                          "raw": "0"
                                        },
                                        "computed": true
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 18872,
                                        "end": 18880,
                                        "loc": {
                                          "start": {
                                            "line": 493,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 493,
                                            "column": 35
                                          }
                                        },
                                        "name": "position"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 18881,
                                      "end": 18884,
                                      "loc": {
                                        "start": {
                                          "line": 493,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 493,
                                          "column": 39
                                        }
                                      },
                                      "name": "sub"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "MemberExpression",
                                      "start": 18885,
                                      "end": 18910,
                                      "loc": {
                                        "start": {
                                          "line": 493,
                                          "column": 40
                                        },
                                        "end": {
                                          "line": 493,
                                          "column": 65
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 18885,
                                        "end": 18901,
                                        "loc": {
                                          "start": {
                                            "line": 493,
                                            "column": 40
                                          },
                                          "end": {
                                            "line": 493,
                                            "column": 56
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 18885,
                                          "end": 18889,
                                          "loc": {
                                            "start": {
                                              "line": 493,
                                              "column": 40
                                            },
                                            "end": {
                                              "line": 493,
                                              "column": 44
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 18890,
                                          "end": 18901,
                                          "loc": {
                                            "start": {
                                              "line": 493,
                                              "column": 45
                                            },
                                            "end": {
                                              "line": 493,
                                              "column": 56
                                            }
                                          },
                                          "name": "centerPoint"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 18902,
                                        "end": 18910,
                                        "loc": {
                                          "start": {
                                            "line": 493,
                                            "column": 57
                                          },
                                          "end": {
                                            "line": 493,
                                            "column": 65
                                          }
                                        },
                                        "name": "position"
                                      },
                                      "computed": false
                                    }
                                  ]
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 18912,
                                  "end": 18921,
                                  "loc": {
                                    "start": {
                                      "line": 493,
                                      "column": 67
                                    },
                                    "end": {
                                      "line": 493,
                                      "column": 76
                                    }
                                  },
                                  "name": "setLength"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 18922,
                                  "end": 18933,
                                  "loc": {
                                    "start": {
                                      "line": 493,
                                      "column": 77
                                    },
                                    "end": {
                                      "line": 493,
                                      "column": 88
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 18922,
                                    "end": 18926,
                                    "loc": {
                                      "start": {
                                        "line": 493,
                                        "column": 77
                                      },
                                      "end": {
                                        "line": 493,
                                        "column": 81
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 18927,
                                    "end": 18933,
                                    "loc": {
                                      "start": {
                                        "line": 493,
                                        "column": 82
                                      },
                                      "end": {
                                        "line": 493,
                                        "column": 88
                                      }
                                    },
                                    "name": "radius"
                                  },
                                  "computed": false
                                }
                              ]
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 18935,
                              "end": 18938,
                              "loc": {
                                "start": {
                                  "line": 493,
                                  "column": 90
                                },
                                "end": {
                                  "line": 493,
                                  "column": 93
                                }
                              },
                              "name": "add"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "MemberExpression",
                              "start": 18939,
                              "end": 18964,
                              "loc": {
                                "start": {
                                  "line": 493,
                                  "column": 94
                                },
                                "end": {
                                  "line": 493,
                                  "column": 119
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 18939,
                                "end": 18955,
                                "loc": {
                                  "start": {
                                    "line": 493,
                                    "column": 94
                                  },
                                  "end": {
                                    "line": 493,
                                    "column": 110
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 18939,
                                  "end": 18943,
                                  "loc": {
                                    "start": {
                                      "line": 493,
                                      "column": 94
                                    },
                                    "end": {
                                      "line": 493,
                                      "column": 98
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 18944,
                                  "end": 18955,
                                  "loc": {
                                    "start": {
                                      "line": 493,
                                      "column": 99
                                    },
                                    "end": {
                                      "line": 493,
                                      "column": 110
                                    }
                                  },
                                  "name": "centerPoint"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 18956,
                                "end": 18964,
                                "loc": {
                                  "start": {
                                    "line": 493,
                                    "column": 111
                                  },
                                  "end": {
                                    "line": 493,
                                    "column": 119
                                  }
                                },
                                "name": "position"
                              },
                              "computed": false
                            }
                          ]
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 18975,
                      "end": 19131,
                      "loc": {
                        "start": {
                          "line": 494,
                          "column": 8
                        },
                        "end": {
                          "line": 495,
                          "column": 121
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 18979,
                        "end": 19008,
                        "loc": {
                          "start": {
                            "line": 494,
                            "column": 12
                          },
                          "end": {
                            "line": 494,
                            "column": 41
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 18979,
                          "end": 18989,
                          "loc": {
                            "start": {
                              "line": 494,
                              "column": 12
                            },
                            "end": {
                              "line": 494,
                              "column": 22
                            }
                          },
                          "name": "movedPoint"
                        },
                        "operator": "===",
                        "right": {
                          "type": "MemberExpression",
                          "start": 18994,
                          "end": 19008,
                          "loc": {
                            "start": {
                              "line": 494,
                              "column": 27
                            },
                            "end": {
                              "line": 494,
                              "column": 41
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 18994,
                            "end": 19005,
                            "loc": {
                              "start": {
                                "line": 494,
                                "column": 27
                              },
                              "end": {
                                "line": 494,
                                "column": 38
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 18994,
                              "end": 18998,
                              "loc": {
                                "start": {
                                  "line": 494,
                                  "column": 27
                                },
                                "end": {
                                  "line": 494,
                                  "column": 31
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 18999,
                              "end": 19005,
                              "loc": {
                                "start": {
                                  "line": 494,
                                  "column": 32
                                },
                                "end": {
                                  "line": 494,
                                  "column": 38
                                }
                              },
                              "name": "points"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Literal",
                            "start": 19006,
                            "end": 19007,
                            "loc": {
                              "start": {
                                "line": 494,
                                "column": 39
                              },
                              "end": {
                                "line": 494,
                                "column": 40
                              }
                            },
                            "value": 1,
                            "rawValue": 1,
                            "raw": "1"
                          },
                          "computed": true
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 19022,
                        "end": 19131,
                        "loc": {
                          "start": {
                            "line": 495,
                            "column": 12
                          },
                          "end": {
                            "line": 495,
                            "column": 121
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 19022,
                          "end": 19130,
                          "loc": {
                            "start": {
                              "line": 495,
                              "column": 12
                            },
                            "end": {
                              "line": 495,
                              "column": 120
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 19022,
                            "end": 19103,
                            "loc": {
                              "start": {
                                "line": 495,
                                "column": 12
                              },
                              "end": {
                                "line": 495,
                                "column": 93
                              }
                            },
                            "object": {
                              "type": "CallExpression",
                              "start": 19022,
                              "end": 19099,
                              "loc": {
                                "start": {
                                  "line": 495,
                                  "column": 12
                                },
                                "end": {
                                  "line": 495,
                                  "column": 89
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 19022,
                                "end": 19086,
                                "loc": {
                                  "start": {
                                    "line": 495,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 495,
                                    "column": 76
                                  }
                                },
                                "object": {
                                  "type": "CallExpression",
                                  "start": 19022,
                                  "end": 19076,
                                  "loc": {
                                    "start": {
                                      "line": 495,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 495,
                                      "column": 66
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 19022,
                                    "end": 19049,
                                    "loc": {
                                      "start": {
                                        "line": 495,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 495,
                                        "column": 39
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 19022,
                                      "end": 19045,
                                      "loc": {
                                        "start": {
                                          "line": 495,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 495,
                                          "column": 35
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 19022,
                                        "end": 19036,
                                        "loc": {
                                          "start": {
                                            "line": 495,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 495,
                                            "column": 26
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 19022,
                                          "end": 19033,
                                          "loc": {
                                            "start": {
                                              "line": 495,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 495,
                                              "column": 23
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 19022,
                                            "end": 19026,
                                            "loc": {
                                              "start": {
                                                "line": 495,
                                                "column": 12
                                              },
                                              "end": {
                                                "line": 495,
                                                "column": 16
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 19027,
                                            "end": 19033,
                                            "loc": {
                                              "start": {
                                                "line": 495,
                                                "column": 17
                                              },
                                              "end": {
                                                "line": 495,
                                                "column": 23
                                              }
                                            },
                                            "name": "points"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Literal",
                                          "start": 19034,
                                          "end": 19035,
                                          "loc": {
                                            "start": {
                                              "line": 495,
                                              "column": 24
                                            },
                                            "end": {
                                              "line": 495,
                                              "column": 25
                                            }
                                          },
                                          "value": 1,
                                          "rawValue": 1,
                                          "raw": "1"
                                        },
                                        "computed": true
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 19037,
                                        "end": 19045,
                                        "loc": {
                                          "start": {
                                            "line": 495,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 495,
                                            "column": 35
                                          }
                                        },
                                        "name": "position"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 19046,
                                      "end": 19049,
                                      "loc": {
                                        "start": {
                                          "line": 495,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 495,
                                          "column": 39
                                        }
                                      },
                                      "name": "sub"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "MemberExpression",
                                      "start": 19050,
                                      "end": 19075,
                                      "loc": {
                                        "start": {
                                          "line": 495,
                                          "column": 40
                                        },
                                        "end": {
                                          "line": 495,
                                          "column": 65
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 19050,
                                        "end": 19066,
                                        "loc": {
                                          "start": {
                                            "line": 495,
                                            "column": 40
                                          },
                                          "end": {
                                            "line": 495,
                                            "column": 56
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 19050,
                                          "end": 19054,
                                          "loc": {
                                            "start": {
                                              "line": 495,
                                              "column": 40
                                            },
                                            "end": {
                                              "line": 495,
                                              "column": 44
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 19055,
                                          "end": 19066,
                                          "loc": {
                                            "start": {
                                              "line": 495,
                                              "column": 45
                                            },
                                            "end": {
                                              "line": 495,
                                              "column": 56
                                            }
                                          },
                                          "name": "centerPoint"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 19067,
                                        "end": 19075,
                                        "loc": {
                                          "start": {
                                            "line": 495,
                                            "column": 57
                                          },
                                          "end": {
                                            "line": 495,
                                            "column": 65
                                          }
                                        },
                                        "name": "position"
                                      },
                                      "computed": false
                                    }
                                  ]
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 19077,
                                  "end": 19086,
                                  "loc": {
                                    "start": {
                                      "line": 495,
                                      "column": 67
                                    },
                                    "end": {
                                      "line": 495,
                                      "column": 76
                                    }
                                  },
                                  "name": "setLength"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 19087,
                                  "end": 19098,
                                  "loc": {
                                    "start": {
                                      "line": 495,
                                      "column": 77
                                    },
                                    "end": {
                                      "line": 495,
                                      "column": 88
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 19087,
                                    "end": 19091,
                                    "loc": {
                                      "start": {
                                        "line": 495,
                                        "column": 77
                                      },
                                      "end": {
                                        "line": 495,
                                        "column": 81
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 19092,
                                    "end": 19098,
                                    "loc": {
                                      "start": {
                                        "line": 495,
                                        "column": 82
                                      },
                                      "end": {
                                        "line": 495,
                                        "column": 88
                                      }
                                    },
                                    "name": "radius"
                                  },
                                  "computed": false
                                }
                              ]
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 19100,
                              "end": 19103,
                              "loc": {
                                "start": {
                                  "line": 495,
                                  "column": 90
                                },
                                "end": {
                                  "line": 495,
                                  "column": 93
                                }
                              },
                              "name": "add"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "MemberExpression",
                              "start": 19104,
                              "end": 19129,
                              "loc": {
                                "start": {
                                  "line": 495,
                                  "column": 94
                                },
                                "end": {
                                  "line": 495,
                                  "column": 119
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 19104,
                                "end": 19120,
                                "loc": {
                                  "start": {
                                    "line": 495,
                                    "column": 94
                                  },
                                  "end": {
                                    "line": 495,
                                    "column": 110
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 19104,
                                  "end": 19108,
                                  "loc": {
                                    "start": {
                                      "line": 495,
                                      "column": 94
                                    },
                                    "end": {
                                      "line": 495,
                                      "column": 98
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 19109,
                                  "end": 19120,
                                  "loc": {
                                    "start": {
                                      "line": 495,
                                      "column": 99
                                    },
                                    "end": {
                                      "line": 495,
                                      "column": 110
                                    }
                                  },
                                  "name": "centerPoint"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 19121,
                                "end": 19129,
                                "loc": {
                                  "start": {
                                    "line": 495,
                                    "column": 111
                                  },
                                  "end": {
                                    "line": 495,
                                    "column": 119
                                  }
                                },
                                "name": "position"
                              },
                              "computed": false
                            }
                          ]
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 19141,
                      "end": 19221,
                      "loc": {
                        "start": {
                          "line": 497,
                          "column": 8
                        },
                        "end": {
                          "line": 497,
                          "column": 88
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 19145,
                          "end": 19220,
                          "loc": {
                            "start": {
                              "line": 497,
                              "column": 12
                            },
                            "end": {
                              "line": 497,
                              "column": 87
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 19145,
                            "end": 19155,
                            "loc": {
                              "start": {
                                "line": 497,
                                "column": 12
                              },
                              "end": {
                                "line": 497,
                                "column": 22
                              }
                            },
                            "name": "center0Dir"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 19158,
                            "end": 19220,
                            "loc": {
                              "start": {
                                "line": 497,
                                "column": 25
                              },
                              "end": {
                                "line": 497,
                                "column": 87
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 19158,
                              "end": 19193,
                              "loc": {
                                "start": {
                                  "line": 497,
                                  "column": 25
                                },
                                "end": {
                                  "line": 497,
                                  "column": 60
                                }
                              },
                              "object": {
                                "type": "CallExpression",
                                "start": 19158,
                                "end": 19189,
                                "loc": {
                                  "start": {
                                    "line": 497,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 497,
                                    "column": 56
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 19158,
                                  "end": 19187,
                                  "loc": {
                                    "start": {
                                      "line": 497,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 497,
                                      "column": 54
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 19158,
                                    "end": 19181,
                                    "loc": {
                                      "start": {
                                        "line": 497,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 497,
                                        "column": 48
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 19158,
                                      "end": 19172,
                                      "loc": {
                                        "start": {
                                          "line": 497,
                                          "column": 25
                                        },
                                        "end": {
                                          "line": 497,
                                          "column": 39
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 19158,
                                        "end": 19169,
                                        "loc": {
                                          "start": {
                                            "line": 497,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 497,
                                            "column": 36
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 19158,
                                          "end": 19162,
                                          "loc": {
                                            "start": {
                                              "line": 497,
                                              "column": 25
                                            },
                                            "end": {
                                              "line": 497,
                                              "column": 29
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 19163,
                                          "end": 19169,
                                          "loc": {
                                            "start": {
                                              "line": 497,
                                              "column": 30
                                            },
                                            "end": {
                                              "line": 497,
                                              "column": 36
                                            }
                                          },
                                          "name": "points"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Literal",
                                        "start": 19170,
                                        "end": 19171,
                                        "loc": {
                                          "start": {
                                            "line": 497,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 497,
                                            "column": 38
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      "computed": true
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 19173,
                                      "end": 19181,
                                      "loc": {
                                        "start": {
                                          "line": 497,
                                          "column": 40
                                        },
                                        "end": {
                                          "line": 497,
                                          "column": 48
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 19182,
                                    "end": 19187,
                                    "loc": {
                                      "start": {
                                        "line": 497,
                                        "column": 49
                                      },
                                      "end": {
                                        "line": 497,
                                        "column": 54
                                      }
                                    },
                                    "name": "clone"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 19190,
                                "end": 19193,
                                "loc": {
                                  "start": {
                                    "line": 497,
                                    "column": 57
                                  },
                                  "end": {
                                    "line": 497,
                                    "column": 60
                                  }
                                },
                                "name": "sub"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 19194,
                                "end": 19219,
                                "loc": {
                                  "start": {
                                    "line": 497,
                                    "column": 61
                                  },
                                  "end": {
                                    "line": 497,
                                    "column": 86
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 19194,
                                  "end": 19210,
                                  "loc": {
                                    "start": {
                                      "line": 497,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 497,
                                      "column": 77
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 19194,
                                    "end": 19198,
                                    "loc": {
                                      "start": {
                                        "line": 497,
                                        "column": 61
                                      },
                                      "end": {
                                        "line": 497,
                                        "column": 65
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 19199,
                                    "end": 19210,
                                    "loc": {
                                      "start": {
                                        "line": 497,
                                        "column": 66
                                      },
                                      "end": {
                                        "line": 497,
                                        "column": 77
                                      }
                                    },
                                    "name": "centerPoint"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 19211,
                                  "end": 19219,
                                  "loc": {
                                    "start": {
                                      "line": 497,
                                      "column": 78
                                    },
                                    "end": {
                                      "line": 497,
                                      "column": 86
                                    }
                                  },
                                  "name": "position"
                                },
                                "computed": false
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 19230,
                      "end": 19310,
                      "loc": {
                        "start": {
                          "line": 498,
                          "column": 8
                        },
                        "end": {
                          "line": 498,
                          "column": 88
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 19234,
                          "end": 19309,
                          "loc": {
                            "start": {
                              "line": 498,
                              "column": 12
                            },
                            "end": {
                              "line": 498,
                              "column": 87
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 19234,
                            "end": 19244,
                            "loc": {
                              "start": {
                                "line": 498,
                                "column": 12
                              },
                              "end": {
                                "line": 498,
                                "column": 22
                              }
                            },
                            "name": "center1Dir"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 19247,
                            "end": 19309,
                            "loc": {
                              "start": {
                                "line": 498,
                                "column": 25
                              },
                              "end": {
                                "line": 498,
                                "column": 87
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 19247,
                              "end": 19282,
                              "loc": {
                                "start": {
                                  "line": 498,
                                  "column": 25
                                },
                                "end": {
                                  "line": 498,
                                  "column": 60
                                }
                              },
                              "object": {
                                "type": "CallExpression",
                                "start": 19247,
                                "end": 19278,
                                "loc": {
                                  "start": {
                                    "line": 498,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 498,
                                    "column": 56
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 19247,
                                  "end": 19276,
                                  "loc": {
                                    "start": {
                                      "line": 498,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 498,
                                      "column": 54
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 19247,
                                    "end": 19270,
                                    "loc": {
                                      "start": {
                                        "line": 498,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 498,
                                        "column": 48
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 19247,
                                      "end": 19261,
                                      "loc": {
                                        "start": {
                                          "line": 498,
                                          "column": 25
                                        },
                                        "end": {
                                          "line": 498,
                                          "column": 39
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 19247,
                                        "end": 19258,
                                        "loc": {
                                          "start": {
                                            "line": 498,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 498,
                                            "column": 36
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 19247,
                                          "end": 19251,
                                          "loc": {
                                            "start": {
                                              "line": 498,
                                              "column": 25
                                            },
                                            "end": {
                                              "line": 498,
                                              "column": 29
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 19252,
                                          "end": 19258,
                                          "loc": {
                                            "start": {
                                              "line": 498,
                                              "column": 30
                                            },
                                            "end": {
                                              "line": 498,
                                              "column": 36
                                            }
                                          },
                                          "name": "points"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Literal",
                                        "start": 19259,
                                        "end": 19260,
                                        "loc": {
                                          "start": {
                                            "line": 498,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 498,
                                            "column": 38
                                          }
                                        },
                                        "value": 1,
                                        "rawValue": 1,
                                        "raw": "1"
                                      },
                                      "computed": true
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 19262,
                                      "end": 19270,
                                      "loc": {
                                        "start": {
                                          "line": 498,
                                          "column": 40
                                        },
                                        "end": {
                                          "line": 498,
                                          "column": 48
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 19271,
                                    "end": 19276,
                                    "loc": {
                                      "start": {
                                        "line": 498,
                                        "column": 49
                                      },
                                      "end": {
                                        "line": 498,
                                        "column": 54
                                      }
                                    },
                                    "name": "clone"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 19279,
                                "end": 19282,
                                "loc": {
                                  "start": {
                                    "line": 498,
                                    "column": 57
                                  },
                                  "end": {
                                    "line": 498,
                                    "column": 60
                                  }
                                },
                                "name": "sub"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 19283,
                                "end": 19308,
                                "loc": {
                                  "start": {
                                    "line": 498,
                                    "column": 61
                                  },
                                  "end": {
                                    "line": 498,
                                    "column": 86
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 19283,
                                  "end": 19299,
                                  "loc": {
                                    "start": {
                                      "line": 498,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 498,
                                      "column": 77
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 19283,
                                    "end": 19287,
                                    "loc": {
                                      "start": {
                                        "line": 498,
                                        "column": 61
                                      },
                                      "end": {
                                        "line": 498,
                                        "column": 65
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 19288,
                                    "end": 19299,
                                    "loc": {
                                      "start": {
                                        "line": 498,
                                        "column": 66
                                      },
                                      "end": {
                                        "line": 498,
                                        "column": 77
                                      }
                                    },
                                    "name": "centerPoint"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 19300,
                                  "end": 19308,
                                  "loc": {
                                    "start": {
                                      "line": 498,
                                      "column": 78
                                    },
                                    "end": {
                                      "line": 498,
                                      "column": 86
                                    }
                                  },
                                  "name": "position"
                                },
                                "computed": false
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 19319,
                      "end": 19376,
                      "loc": {
                        "start": {
                          "line": 499,
                          "column": 8
                        },
                        "end": {
                          "line": 499,
                          "column": 65
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 19319,
                        "end": 19375,
                        "loc": {
                          "start": {
                            "line": 499,
                            "column": 8
                          },
                          "end": {
                            "line": 499,
                            "column": 64
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 19319,
                          "end": 19334,
                          "loc": {
                            "start": {
                              "line": 499,
                              "column": 8
                            },
                            "end": {
                              "line": 499,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 19319,
                            "end": 19323,
                            "loc": {
                              "start": {
                                "line": 499,
                                "column": 8
                              },
                              "end": {
                                "line": 499,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 19324,
                            "end": 19334,
                            "loc": {
                              "start": {
                                "line": 499,
                                "column": 13
                              },
                              "end": {
                                "line": 499,
                                "column": 23
                              }
                            },
                            "name": "angleStart"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "CallExpression",
                          "start": 19337,
                          "end": 19375,
                          "loc": {
                            "start": {
                              "line": 499,
                              "column": 26
                            },
                            "end": {
                              "line": 499,
                              "column": 64
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 19337,
                            "end": 19347,
                            "loc": {
                              "start": {
                                "line": 499,
                                "column": 26
                              },
                              "end": {
                                "line": 499,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 19337,
                              "end": 19341,
                              "loc": {
                                "start": {
                                  "line": 499,
                                  "column": 26
                                },
                                "end": {
                                  "line": 499,
                                  "column": 30
                                }
                              },
                              "name": "Math"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 19342,
                              "end": 19347,
                              "loc": {
                                "start": {
                                  "line": 499,
                                  "column": 31
                                },
                                "end": {
                                  "line": 499,
                                  "column": 36
                                }
                              },
                              "name": "atan2"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "MemberExpression",
                              "start": 19348,
                              "end": 19360,
                              "loc": {
                                "start": {
                                  "line": 499,
                                  "column": 37
                                },
                                "end": {
                                  "line": 499,
                                  "column": 49
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 19348,
                                "end": 19358,
                                "loc": {
                                  "start": {
                                    "line": 499,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 499,
                                    "column": 47
                                  }
                                },
                                "name": "center0Dir"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 19359,
                                "end": 19360,
                                "loc": {
                                  "start": {
                                    "line": 499,
                                    "column": 48
                                  },
                                  "end": {
                                    "line": 499,
                                    "column": 49
                                  }
                                },
                                "name": "y"
                              },
                              "computed": false
                            },
                            {
                              "type": "MemberExpression",
                              "start": 19362,
                              "end": 19374,
                              "loc": {
                                "start": {
                                  "line": 499,
                                  "column": 51
                                },
                                "end": {
                                  "line": 499,
                                  "column": 63
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 19362,
                                "end": 19372,
                                "loc": {
                                  "start": {
                                    "line": 499,
                                    "column": 51
                                  },
                                  "end": {
                                    "line": 499,
                                    "column": 61
                                  }
                                },
                                "name": "center0Dir"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 19373,
                                "end": 19374,
                                "loc": {
                                  "start": {
                                    "line": 499,
                                    "column": 62
                                  },
                                  "end": {
                                    "line": 499,
                                    "column": 63
                                  }
                                },
                                "name": "x"
                              },
                              "computed": false
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 19385,
                      "end": 19440,
                      "loc": {
                        "start": {
                          "line": 500,
                          "column": 8
                        },
                        "end": {
                          "line": 500,
                          "column": 63
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 19385,
                        "end": 19439,
                        "loc": {
                          "start": {
                            "line": 500,
                            "column": 8
                          },
                          "end": {
                            "line": 500,
                            "column": 62
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 19385,
                          "end": 19398,
                          "loc": {
                            "start": {
                              "line": 500,
                              "column": 8
                            },
                            "end": {
                              "line": 500,
                              "column": 21
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 19385,
                            "end": 19389,
                            "loc": {
                              "start": {
                                "line": 500,
                                "column": 8
                              },
                              "end": {
                                "line": 500,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 19390,
                            "end": 19398,
                            "loc": {
                              "start": {
                                "line": 500,
                                "column": 13
                              },
                              "end": {
                                "line": 500,
                                "column": 21
                              }
                            },
                            "name": "angleEnd"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "CallExpression",
                          "start": 19401,
                          "end": 19439,
                          "loc": {
                            "start": {
                              "line": 500,
                              "column": 24
                            },
                            "end": {
                              "line": 500,
                              "column": 62
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 19401,
                            "end": 19411,
                            "loc": {
                              "start": {
                                "line": 500,
                                "column": 24
                              },
                              "end": {
                                "line": 500,
                                "column": 34
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 19401,
                              "end": 19405,
                              "loc": {
                                "start": {
                                  "line": 500,
                                  "column": 24
                                },
                                "end": {
                                  "line": 500,
                                  "column": 28
                                }
                              },
                              "name": "Math"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 19406,
                              "end": 19411,
                              "loc": {
                                "start": {
                                  "line": 500,
                                  "column": 29
                                },
                                "end": {
                                  "line": 500,
                                  "column": 34
                                }
                              },
                              "name": "atan2"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "MemberExpression",
                              "start": 19412,
                              "end": 19424,
                              "loc": {
                                "start": {
                                  "line": 500,
                                  "column": 35
                                },
                                "end": {
                                  "line": 500,
                                  "column": 47
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 19412,
                                "end": 19422,
                                "loc": {
                                  "start": {
                                    "line": 500,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 500,
                                    "column": 45
                                  }
                                },
                                "name": "center1Dir"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 19423,
                                "end": 19424,
                                "loc": {
                                  "start": {
                                    "line": 500,
                                    "column": 46
                                  },
                                  "end": {
                                    "line": 500,
                                    "column": 47
                                  }
                                },
                                "name": "y"
                              },
                              "computed": false
                            },
                            {
                              "type": "MemberExpression",
                              "start": 19426,
                              "end": 19438,
                              "loc": {
                                "start": {
                                  "line": 500,
                                  "column": 49
                                },
                                "end": {
                                  "line": 500,
                                  "column": 61
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 19426,
                                "end": 19436,
                                "loc": {
                                  "start": {
                                    "line": 500,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 500,
                                    "column": 59
                                  }
                                },
                                "name": "center1Dir"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 19437,
                                "end": 19438,
                                "loc": {
                                  "start": {
                                    "line": 500,
                                    "column": 60
                                  },
                                  "end": {
                                    "line": 500,
                                    "column": 61
                                  }
                                },
                                "name": "x"
                              },
                              "computed": false
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "IfStatement",
                      "start": 19449,
                      "end": 19689,
                      "loc": {
                        "start": {
                          "line": 501,
                          "column": 8
                        },
                        "end": {
                          "line": 507,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "MemberExpression",
                        "start": 19453,
                        "end": 19467,
                        "loc": {
                          "start": {
                            "line": 501,
                            "column": 12
                          },
                          "end": {
                            "line": 501,
                            "column": 26
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 19453,
                          "end": 19457,
                          "loc": {
                            "start": {
                              "line": 501,
                              "column": 12
                            },
                            "end": {
                              "line": 501,
                              "column": 16
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 19458,
                          "end": 19467,
                          "loc": {
                            "start": {
                              "line": 501,
                              "column": 17
                            },
                            "end": {
                              "line": 501,
                              "column": 26
                            }
                          },
                          "name": "clockwise"
                        },
                        "computed": false
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 19469,
                        "end": 19577,
                        "loc": {
                          "start": {
                            "line": 501,
                            "column": 28
                          },
                          "end": {
                            "line": 504,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "IfStatement",
                            "start": 19483,
                            "end": 19567,
                            "loc": {
                              "start": {
                                "line": 502,
                                "column": 12
                              },
                              "end": {
                                "line": 503,
                                "column": 47
                              }
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 19487,
                              "end": 19518,
                              "loc": {
                                "start": {
                                  "line": 502,
                                  "column": 16
                                },
                                "end": {
                                  "line": 502,
                                  "column": 47
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 19487,
                                "end": 19502,
                                "loc": {
                                  "start": {
                                    "line": 502,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 502,
                                    "column": 31
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 19487,
                                  "end": 19491,
                                  "loc": {
                                    "start": {
                                      "line": 502,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 502,
                                      "column": 20
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 19492,
                                  "end": 19502,
                                  "loc": {
                                    "start": {
                                      "line": 502,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 502,
                                      "column": 31
                                    }
                                  },
                                  "name": "angleStart"
                                },
                                "computed": false
                              },
                              "operator": "<",
                              "right": {
                                "type": "MemberExpression",
                                "start": 19505,
                                "end": 19518,
                                "loc": {
                                  "start": {
                                    "line": 502,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 502,
                                    "column": 47
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 19505,
                                  "end": 19509,
                                  "loc": {
                                    "start": {
                                      "line": 502,
                                      "column": 34
                                    },
                                    "end": {
                                      "line": 502,
                                      "column": 38
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 19510,
                                  "end": 19518,
                                  "loc": {
                                    "start": {
                                      "line": 502,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 502,
                                      "column": 47
                                    }
                                  },
                                  "name": "angleEnd"
                                },
                                "computed": false
                              }
                            },
                            "consequent": {
                              "type": "ExpressionStatement",
                              "start": 19536,
                              "end": 19567,
                              "loc": {
                                "start": {
                                  "line": 503,
                                  "column": 16
                                },
                                "end": {
                                  "line": 503,
                                  "column": 47
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 19536,
                                "end": 19566,
                                "loc": {
                                  "start": {
                                    "line": 503,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 503,
                                    "column": 46
                                  }
                                },
                                "operator": "+=",
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 19536,
                                  "end": 19551,
                                  "loc": {
                                    "start": {
                                      "line": 503,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 503,
                                      "column": 31
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 19536,
                                    "end": 19540,
                                    "loc": {
                                      "start": {
                                        "line": 503,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 503,
                                        "column": 20
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 19541,
                                    "end": 19551,
                                    "loc": {
                                      "start": {
                                        "line": 503,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 503,
                                        "column": 31
                                      }
                                    },
                                    "name": "angleStart"
                                  },
                                  "computed": false
                                },
                                "right": {
                                  "type": "BinaryExpression",
                                  "start": 19555,
                                  "end": 19566,
                                  "loc": {
                                    "start": {
                                      "line": 503,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 503,
                                      "column": 46
                                    }
                                  },
                                  "left": {
                                    "type": "Literal",
                                    "start": 19555,
                                    "end": 19556,
                                    "loc": {
                                      "start": {
                                        "line": 503,
                                        "column": 35
                                      },
                                      "end": {
                                        "line": 503,
                                        "column": 36
                                      }
                                    },
                                    "value": 2,
                                    "rawValue": 2,
                                    "raw": "2"
                                  },
                                  "operator": "*",
                                  "right": {
                                    "type": "MemberExpression",
                                    "start": 19559,
                                    "end": 19566,
                                    "loc": {
                                      "start": {
                                        "line": 503,
                                        "column": 39
                                      },
                                      "end": {
                                        "line": 503,
                                        "column": 46
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 19559,
                                      "end": 19563,
                                      "loc": {
                                        "start": {
                                          "line": 503,
                                          "column": 39
                                        },
                                        "end": {
                                          "line": 503,
                                          "column": 43
                                        }
                                      },
                                      "name": "Math"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 19564,
                                      "end": 19566,
                                      "loc": {
                                        "start": {
                                          "line": 503,
                                          "column": 44
                                        },
                                        "end": {
                                          "line": 503,
                                          "column": 46
                                        }
                                      },
                                      "name": "PI"
                                    },
                                    "computed": false
                                  }
                                }
                              }
                            },
                            "alternate": null
                          }
                        ]
                      },
                      "alternate": {
                        "type": "BlockStatement",
                        "start": 19583,
                        "end": 19689,
                        "loc": {
                          "start": {
                            "line": 504,
                            "column": 15
                          },
                          "end": {
                            "line": 507,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "IfStatement",
                            "start": 19597,
                            "end": 19679,
                            "loc": {
                              "start": {
                                "line": 505,
                                "column": 12
                              },
                              "end": {
                                "line": 506,
                                "column": 45
                              }
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 19601,
                              "end": 19632,
                              "loc": {
                                "start": {
                                  "line": 505,
                                  "column": 16
                                },
                                "end": {
                                  "line": 505,
                                  "column": 47
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 19601,
                                "end": 19616,
                                "loc": {
                                  "start": {
                                    "line": 505,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 505,
                                    "column": 31
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 19601,
                                  "end": 19605,
                                  "loc": {
                                    "start": {
                                      "line": 505,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 505,
                                      "column": 20
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 19606,
                                  "end": 19616,
                                  "loc": {
                                    "start": {
                                      "line": 505,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 505,
                                      "column": 31
                                    }
                                  },
                                  "name": "angleStart"
                                },
                                "computed": false
                              },
                              "operator": ">",
                              "right": {
                                "type": "MemberExpression",
                                "start": 19619,
                                "end": 19632,
                                "loc": {
                                  "start": {
                                    "line": 505,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 505,
                                    "column": 47
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 19619,
                                  "end": 19623,
                                  "loc": {
                                    "start": {
                                      "line": 505,
                                      "column": 34
                                    },
                                    "end": {
                                      "line": 505,
                                      "column": 38
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 19624,
                                  "end": 19632,
                                  "loc": {
                                    "start": {
                                      "line": 505,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 505,
                                      "column": 47
                                    }
                                  },
                                  "name": "angleEnd"
                                },
                                "computed": false
                              }
                            },
                            "consequent": {
                              "type": "ExpressionStatement",
                              "start": 19650,
                              "end": 19679,
                              "loc": {
                                "start": {
                                  "line": 506,
                                  "column": 16
                                },
                                "end": {
                                  "line": 506,
                                  "column": 45
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 19650,
                                "end": 19678,
                                "loc": {
                                  "start": {
                                    "line": 506,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 506,
                                    "column": 44
                                  }
                                },
                                "operator": "+=",
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 19650,
                                  "end": 19663,
                                  "loc": {
                                    "start": {
                                      "line": 506,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 506,
                                      "column": 29
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 19650,
                                    "end": 19654,
                                    "loc": {
                                      "start": {
                                        "line": 506,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 506,
                                        "column": 20
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 19655,
                                    "end": 19663,
                                    "loc": {
                                      "start": {
                                        "line": 506,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 506,
                                        "column": 29
                                      }
                                    },
                                    "name": "angleEnd"
                                  },
                                  "computed": false
                                },
                                "right": {
                                  "type": "BinaryExpression",
                                  "start": 19667,
                                  "end": 19678,
                                  "loc": {
                                    "start": {
                                      "line": 506,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 506,
                                      "column": 44
                                    }
                                  },
                                  "left": {
                                    "type": "Literal",
                                    "start": 19667,
                                    "end": 19668,
                                    "loc": {
                                      "start": {
                                        "line": 506,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 506,
                                        "column": 34
                                      }
                                    },
                                    "value": 2,
                                    "rawValue": 2,
                                    "raw": "2"
                                  },
                                  "operator": "*",
                                  "right": {
                                    "type": "MemberExpression",
                                    "start": 19671,
                                    "end": 19678,
                                    "loc": {
                                      "start": {
                                        "line": 506,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 506,
                                        "column": 44
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 19671,
                                      "end": 19675,
                                      "loc": {
                                        "start": {
                                          "line": 506,
                                          "column": 37
                                        },
                                        "end": {
                                          "line": 506,
                                          "column": 41
                                        }
                                      },
                                      "name": "Math"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 19676,
                                      "end": 19678,
                                      "loc": {
                                        "start": {
                                          "line": 506,
                                          "column": 42
                                        },
                                        "end": {
                                          "line": 506,
                                          "column": 44
                                        }
                                      },
                                      "name": "PI"
                                    },
                                    "computed": false
                                  }
                                }
                              }
                            },
                            "alternate": null
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 19701,
              "end": 19822,
              "loc": {
                "start": {
                  "line": 510,
                  "column": 4
                },
                "end": {
                  "line": 513,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 19701,
                "end": 19721,
                "loc": {
                  "start": {
                    "line": 510,
                    "column": 4
                  },
                  "end": {
                    "line": 510,
                    "column": 24
                  }
                },
                "name": "getAuxiliaryGeometry"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 19721,
                "end": 19822,
                "loc": {
                  "start": {
                    "line": 510,
                    "column": 24
                  },
                  "end": {
                    "line": 513,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 19724,
                  "end": 19822,
                  "loc": {
                    "start": {
                      "line": 510,
                      "column": 27
                    },
                    "end": {
                      "line": 513,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 19734,
                      "end": 19791,
                      "loc": {
                        "start": {
                          "line": 511,
                          "column": 8
                        },
                        "end": {
                          "line": 511,
                          "column": 65
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 19738,
                          "end": 19790,
                          "loc": {
                            "start": {
                              "line": 511,
                              "column": 12
                            },
                            "end": {
                              "line": 511,
                              "column": 64
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 19738,
                            "end": 19746,
                            "loc": {
                              "start": {
                                "line": 511,
                                "column": 12
                              },
                              "end": {
                                "line": 511,
                                "column": 20
                              }
                            },
                            "name": "geometry"
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 19749,
                            "end": 19790,
                            "loc": {
                              "start": {
                                "line": 511,
                                "column": 23
                              },
                              "end": {
                                "line": 511,
                                "column": 64
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 19753,
                              "end": 19773,
                              "loc": {
                                "start": {
                                  "line": 511,
                                  "column": 27
                                },
                                "end": {
                                  "line": 511,
                                  "column": 47
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 19753,
                                "end": 19758,
                                "loc": {
                                  "start": {
                                    "line": 511,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 511,
                                    "column": 32
                                  }
                                },
                                "name": "THREE"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 19759,
                                "end": 19773,
                                "loc": {
                                  "start": {
                                    "line": 511,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 511,
                                    "column": 47
                                  }
                                },
                                "name": "CircleGeometry"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 19774,
                                "end": 19785,
                                "loc": {
                                  "start": {
                                    "line": 511,
                                    "column": 48
                                  },
                                  "end": {
                                    "line": 511,
                                    "column": 59
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 19774,
                                  "end": 19778,
                                  "loc": {
                                    "start": {
                                      "line": 511,
                                      "column": 48
                                    },
                                    "end": {
                                      "line": 511,
                                      "column": 52
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 19779,
                                  "end": 19785,
                                  "loc": {
                                    "start": {
                                      "line": 511,
                                      "column": 53
                                    },
                                    "end": {
                                      "line": 511,
                                      "column": 59
                                    }
                                  },
                                  "name": "radius"
                                },
                                "computed": false
                              },
                              {
                                "type": "Literal",
                                "start": 19787,
                                "end": 19789,
                                "loc": {
                                  "start": {
                                    "line": 511,
                                    "column": 61
                                  },
                                  "end": {
                                    "line": 511,
                                    "column": 63
                                  }
                                },
                                "value": 32,
                                "rawValue": 32,
                                "raw": "32"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 19800,
                      "end": 19816,
                      "loc": {
                        "start": {
                          "line": 512,
                          "column": 8
                        },
                        "end": {
                          "line": 512,
                          "column": 24
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 19807,
                        "end": 19815,
                        "loc": {
                          "start": {
                            "line": 512,
                            "column": 15
                          },
                          "end": {
                            "line": 512,
                            "column": 23
                          }
                        },
                        "name": "geometry"
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 19828,
              "end": 20349,
              "loc": {
                "start": {
                  "line": 515,
                  "column": 4
                },
                "end": {
                  "line": 526,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 19828,
                "end": 19851,
                "loc": {
                  "start": {
                    "line": 515,
                    "column": 4
                  },
                  "end": {
                    "line": 515,
                    "column": 27
                  }
                },
                "name": "updateAuxiliaryGeometry"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 19851,
                "end": 20349,
                "loc": {
                  "start": {
                    "line": 515,
                    "column": 27
                  },
                  "end": {
                    "line": 526,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 19854,
                  "end": 20349,
                  "loc": {
                    "start": {
                      "line": 515,
                      "column": 30
                    },
                    "end": {
                      "line": 526,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 19864,
                      "end": 19915,
                      "loc": {
                        "start": {
                          "line": 516,
                          "column": 8
                        },
                        "end": {
                          "line": 516,
                          "column": 59
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 19868,
                          "end": 19914,
                          "loc": {
                            "start": {
                              "line": 516,
                              "column": 12
                            },
                            "end": {
                              "line": 516,
                              "column": 58
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 19868,
                            "end": 19876,
                            "loc": {
                              "start": {
                                "line": 516,
                                "column": 12
                              },
                              "end": {
                                "line": 516,
                                "column": 20
                              }
                            },
                            "name": "geometry"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 19879,
                            "end": 19914,
                            "loc": {
                              "start": {
                                "line": 516,
                                "column": 23
                              },
                              "end": {
                                "line": 516,
                                "column": 58
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 19879,
                              "end": 19905,
                              "loc": {
                                "start": {
                                  "line": 516,
                                  "column": 23
                                },
                                "end": {
                                  "line": 516,
                                  "column": 49
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 19879,
                                "end": 19883,
                                "loc": {
                                  "start": {
                                    "line": 516,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 516,
                                    "column": 27
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 19884,
                                "end": 19905,
                                "loc": {
                                  "start": {
                                    "line": 516,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 516,
                                    "column": 49
                                  }
                                },
                                "name": "auxiliaryConstruction"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 19906,
                              "end": 19914,
                              "loc": {
                                "start": {
                                  "line": 516,
                                  "column": 50
                                },
                                "end": {
                                  "line": 516,
                                  "column": 58
                                }
                              },
                              "name": "geometry"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 19924,
                      "end": 19959,
                      "loc": {
                        "start": {
                          "line": 517,
                          "column": 8
                        },
                        "end": {
                          "line": 517,
                          "column": 43
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 19928,
                          "end": 19958,
                          "loc": {
                            "start": {
                              "line": 517,
                              "column": 12
                            },
                            "end": {
                              "line": 517,
                              "column": 42
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 19928,
                            "end": 19937,
                            "loc": {
                              "start": {
                                "line": 517,
                                "column": 12
                              },
                              "end": {
                                "line": 517,
                                "column": 21
                              }
                            },
                            "name": "stepAngle"
                          },
                          "init": {
                            "type": "BinaryExpression",
                            "start": 19940,
                            "end": 19958,
                            "loc": {
                              "start": {
                                "line": 517,
                                "column": 24
                              },
                              "end": {
                                "line": 517,
                                "column": 42
                              }
                            },
                            "left": {
                              "type": "BinaryExpression",
                              "start": 19941,
                              "end": 19952,
                              "loc": {
                                "start": {
                                  "line": 517,
                                  "column": 25
                                },
                                "end": {
                                  "line": 517,
                                  "column": 36
                                }
                              },
                              "left": {
                                "type": "Literal",
                                "start": 19941,
                                "end": 19942,
                                "loc": {
                                  "start": {
                                    "line": 517,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 517,
                                    "column": 26
                                  }
                                },
                                "value": 2,
                                "rawValue": 2,
                                "raw": "2"
                              },
                              "operator": "*",
                              "right": {
                                "type": "MemberExpression",
                                "start": 19945,
                                "end": 19952,
                                "loc": {
                                  "start": {
                                    "line": 517,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 517,
                                    "column": 36
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 19945,
                                  "end": 19949,
                                  "loc": {
                                    "start": {
                                      "line": 517,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 517,
                                      "column": 33
                                    }
                                  },
                                  "name": "Math"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 19950,
                                  "end": 19952,
                                  "loc": {
                                    "start": {
                                      "line": 517,
                                      "column": 34
                                    },
                                    "end": {
                                      "line": 517,
                                      "column": 36
                                    }
                                  },
                                  "name": "PI"
                                },
                                "computed": false
                              },
                              "parenthesizedExpression": true
                            },
                            "operator": "/",
                            "right": {
                              "type": "Literal",
                              "start": 19956,
                              "end": 19958,
                              "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": 19960,
                          "end": 19991,
                          "loc": {
                            "start": {
                              "line": 517,
                              "column": 44
                            },
                            "end": {
                              "line": 517,
                              "column": 75
                            }
                          },
                          "range": [
                            19960,
                            19991
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ForStatement",
                      "start": 20001,
                      "end": 20224,
                      "loc": {
                        "start": {
                          "line": 519,
                          "column": 8
                        },
                        "end": {
                          "line": 522,
                          "column": 10
                        }
                      },
                      "init": {
                        "type": "VariableDeclaration",
                        "start": 20006,
                        "end": 20015,
                        "loc": {
                          "start": {
                            "line": 519,
                            "column": 13
                          },
                          "end": {
                            "line": 519,
                            "column": 22
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 20010,
                            "end": 20015,
                            "loc": {
                              "start": {
                                "line": 519,
                                "column": 17
                              },
                              "end": {
                                "line": 519,
                                "column": 22
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 20010,
                              "end": 20011,
                              "loc": {
                                "start": {
                                  "line": 519,
                                  "column": 17
                                },
                                "end": {
                                  "line": 519,
                                  "column": 18
                                }
                              },
                              "name": "i",
                              "leadingComments": null
                            },
                            "init": {
                              "type": "Literal",
                              "start": 20014,
                              "end": 20015,
                              "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": 20017,
                        "end": 20045,
                        "loc": {
                          "start": {
                            "line": 519,
                            "column": 24
                          },
                          "end": {
                            "line": 519,
                            "column": 52
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 20017,
                          "end": 20018,
                          "loc": {
                            "start": {
                              "line": 519,
                              "column": 24
                            },
                            "end": {
                              "line": 519,
                              "column": 25
                            }
                          },
                          "name": "i"
                        },
                        "operator": "<",
                        "right": {
                          "type": "MemberExpression",
                          "start": 20021,
                          "end": 20045,
                          "loc": {
                            "start": {
                              "line": 519,
                              "column": 28
                            },
                            "end": {
                              "line": 519,
                              "column": 52
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 20021,
                            "end": 20038,
                            "loc": {
                              "start": {
                                "line": 519,
                                "column": 28
                              },
                              "end": {
                                "line": 519,
                                "column": 45
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 20021,
                              "end": 20029,
                              "loc": {
                                "start": {
                                  "line": 519,
                                  "column": 28
                                },
                                "end": {
                                  "line": 519,
                                  "column": 36
                                }
                              },
                              "name": "geometry"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 20030,
                              "end": 20038,
                              "loc": {
                                "start": {
                                  "line": 519,
                                  "column": 37
                                },
                                "end": {
                                  "line": 519,
                                  "column": 45
                                }
                              },
                              "name": "vertices"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 20039,
                            "end": 20045,
                            "loc": {
                              "start": {
                                "line": 519,
                                "column": 46
                              },
                              "end": {
                                "line": 519,
                                "column": 52
                              }
                            },
                            "name": "length"
                          },
                          "computed": false
                        }
                      },
                      "update": {
                        "type": "UpdateExpression",
                        "start": 20047,
                        "end": 20050,
                        "loc": {
                          "start": {
                            "line": 519,
                            "column": 54
                          },
                          "end": {
                            "line": 519,
                            "column": 57
                          }
                        },
                        "operator": "++",
                        "prefix": true,
                        "argument": {
                          "type": "Identifier",
                          "start": 20049,
                          "end": 20050,
                          "loc": {
                            "start": {
                              "line": 519,
                              "column": 56
                            },
                            "end": {
                              "line": 519,
                              "column": 57
                            }
                          },
                          "name": "i"
                        }
                      },
                      "body": {
                        "type": "BlockStatement",
                        "start": 20052,
                        "end": 20224,
                        "loc": {
                          "start": {
                            "line": 519,
                            "column": 59
                          },
                          "end": {
                            "line": 522,
                            "column": 10
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 20066,
                            "end": 20133,
                            "loc": {
                              "start": {
                                "line": 520,
                                "column": 12
                              },
                              "end": {
                                "line": 520,
                                "column": 79
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 20066,
                              "end": 20132,
                              "loc": {
                                "start": {
                                  "line": 520,
                                  "column": 12
                                },
                                "end": {
                                  "line": 520,
                                  "column": 78
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 20066,
                                "end": 20088,
                                "loc": {
                                  "start": {
                                    "line": 520,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 520,
                                    "column": 34
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 20066,
                                  "end": 20086,
                                  "loc": {
                                    "start": {
                                      "line": 520,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 520,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 20066,
                                    "end": 20083,
                                    "loc": {
                                      "start": {
                                        "line": 520,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 520,
                                        "column": 29
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 20066,
                                      "end": 20074,
                                      "loc": {
                                        "start": {
                                          "line": 520,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 520,
                                          "column": 20
                                        }
                                      },
                                      "name": "geometry"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 20075,
                                      "end": 20083,
                                      "loc": {
                                        "start": {
                                          "line": 520,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 520,
                                          "column": 29
                                        }
                                      },
                                      "name": "vertices"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 20084,
                                    "end": 20085,
                                    "loc": {
                                      "start": {
                                        "line": 520,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 520,
                                        "column": 31
                                      }
                                    },
                                    "name": "i"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 20087,
                                  "end": 20088,
                                  "loc": {
                                    "start": {
                                      "line": 520,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 520,
                                      "column": 34
                                    }
                                  },
                                  "name": "x"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "BinaryExpression",
                                "start": 20091,
                                "end": 20132,
                                "loc": {
                                  "start": {
                                    "line": 520,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 520,
                                    "column": 78
                                  }
                                },
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 20091,
                                  "end": 20102,
                                  "loc": {
                                    "start": {
                                      "line": 520,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 520,
                                      "column": 48
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 20091,
                                    "end": 20095,
                                    "loc": {
                                      "start": {
                                        "line": 520,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 520,
                                        "column": 41
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 20096,
                                    "end": 20102,
                                    "loc": {
                                      "start": {
                                        "line": 520,
                                        "column": 42
                                      },
                                      "end": {
                                        "line": 520,
                                        "column": 48
                                      }
                                    },
                                    "name": "radius"
                                  },
                                  "computed": false
                                },
                                "operator": "*",
                                "right": {
                                  "type": "CallExpression",
                                  "start": 20105,
                                  "end": 20132,
                                  "loc": {
                                    "start": {
                                      "line": 520,
                                      "column": 51
                                    },
                                    "end": {
                                      "line": 520,
                                      "column": 78
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 20105,
                                    "end": 20113,
                                    "loc": {
                                      "start": {
                                        "line": 520,
                                        "column": 51
                                      },
                                      "end": {
                                        "line": 520,
                                        "column": 59
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 20105,
                                      "end": 20109,
                                      "loc": {
                                        "start": {
                                          "line": 520,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 520,
                                          "column": 55
                                        }
                                      },
                                      "name": "Math"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 20110,
                                      "end": 20113,
                                      "loc": {
                                        "start": {
                                          "line": 520,
                                          "column": 56
                                        },
                                        "end": {
                                          "line": 520,
                                          "column": 59
                                        }
                                      },
                                      "name": "cos"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "BinaryExpression",
                                      "start": 20114,
                                      "end": 20131,
                                      "loc": {
                                        "start": {
                                          "line": 520,
                                          "column": 60
                                        },
                                        "end": {
                                          "line": 520,
                                          "column": 77
                                        }
                                      },
                                      "left": {
                                        "type": "Identifier",
                                        "start": 20114,
                                        "end": 20123,
                                        "loc": {
                                          "start": {
                                            "line": 520,
                                            "column": 60
                                          },
                                          "end": {
                                            "line": 520,
                                            "column": 69
                                          }
                                        },
                                        "name": "stepAngle"
                                      },
                                      "operator": "*",
                                      "right": {
                                        "type": "BinaryExpression",
                                        "start": 20127,
                                        "end": 20130,
                                        "loc": {
                                          "start": {
                                            "line": 520,
                                            "column": 73
                                          },
                                          "end": {
                                            "line": 520,
                                            "column": 76
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 20127,
                                          "end": 20128,
                                          "loc": {
                                            "start": {
                                              "line": 520,
                                              "column": 73
                                            },
                                            "end": {
                                              "line": 520,
                                              "column": 74
                                            }
                                          },
                                          "name": "i"
                                        },
                                        "operator": "-",
                                        "right": {
                                          "type": "Literal",
                                          "start": 20129,
                                          "end": 20130,
                                          "loc": {
                                            "start": {
                                              "line": 520,
                                              "column": 75
                                            },
                                            "end": {
                                              "line": 520,
                                              "column": 76
                                            }
                                          },
                                          "value": 1,
                                          "rawValue": 1,
                                          "raw": "1"
                                        },
                                        "parenthesizedExpression": true
                                      }
                                    }
                                  ]
                                }
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 20146,
                            "end": 20213,
                            "loc": {
                              "start": {
                                "line": 521,
                                "column": 12
                              },
                              "end": {
                                "line": 521,
                                "column": 79
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 20146,
                              "end": 20212,
                              "loc": {
                                "start": {
                                  "line": 521,
                                  "column": 12
                                },
                                "end": {
                                  "line": 521,
                                  "column": 78
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 20146,
                                "end": 20168,
                                "loc": {
                                  "start": {
                                    "line": 521,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 521,
                                    "column": 34
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 20146,
                                  "end": 20166,
                                  "loc": {
                                    "start": {
                                      "line": 521,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 521,
                                      "column": 32
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 20146,
                                    "end": 20163,
                                    "loc": {
                                      "start": {
                                        "line": 521,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 521,
                                        "column": 29
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 20146,
                                      "end": 20154,
                                      "loc": {
                                        "start": {
                                          "line": 521,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 521,
                                          "column": 20
                                        }
                                      },
                                      "name": "geometry"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 20155,
                                      "end": 20163,
                                      "loc": {
                                        "start": {
                                          "line": 521,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 521,
                                          "column": 29
                                        }
                                      },
                                      "name": "vertices"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 20164,
                                    "end": 20165,
                                    "loc": {
                                      "start": {
                                        "line": 521,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 521,
                                        "column": 31
                                      }
                                    },
                                    "name": "i"
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 20167,
                                  "end": 20168,
                                  "loc": {
                                    "start": {
                                      "line": 521,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 521,
                                      "column": 34
                                    }
                                  },
                                  "name": "y"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "BinaryExpression",
                                "start": 20171,
                                "end": 20212,
                                "loc": {
                                  "start": {
                                    "line": 521,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 521,
                                    "column": 78
                                  }
                                },
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 20171,
                                  "end": 20182,
                                  "loc": {
                                    "start": {
                                      "line": 521,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 521,
                                      "column": 48
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 20171,
                                    "end": 20175,
                                    "loc": {
                                      "start": {
                                        "line": 521,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 521,
                                        "column": 41
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 20176,
                                    "end": 20182,
                                    "loc": {
                                      "start": {
                                        "line": 521,
                                        "column": 42
                                      },
                                      "end": {
                                        "line": 521,
                                        "column": 48
                                      }
                                    },
                                    "name": "radius"
                                  },
                                  "computed": false
                                },
                                "operator": "*",
                                "right": {
                                  "type": "CallExpression",
                                  "start": 20185,
                                  "end": 20212,
                                  "loc": {
                                    "start": {
                                      "line": 521,
                                      "column": 51
                                    },
                                    "end": {
                                      "line": 521,
                                      "column": 78
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 20185,
                                    "end": 20193,
                                    "loc": {
                                      "start": {
                                        "line": 521,
                                        "column": 51
                                      },
                                      "end": {
                                        "line": 521,
                                        "column": 59
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 20185,
                                      "end": 20189,
                                      "loc": {
                                        "start": {
                                          "line": 521,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 521,
                                          "column": 55
                                        }
                                      },
                                      "name": "Math"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 20190,
                                      "end": 20193,
                                      "loc": {
                                        "start": {
                                          "line": 521,
                                          "column": 56
                                        },
                                        "end": {
                                          "line": 521,
                                          "column": 59
                                        }
                                      },
                                      "name": "sin"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "BinaryExpression",
                                      "start": 20194,
                                      "end": 20211,
                                      "loc": {
                                        "start": {
                                          "line": 521,
                                          "column": 60
                                        },
                                        "end": {
                                          "line": 521,
                                          "column": 77
                                        }
                                      },
                                      "left": {
                                        "type": "Identifier",
                                        "start": 20194,
                                        "end": 20203,
                                        "loc": {
                                          "start": {
                                            "line": 521,
                                            "column": 60
                                          },
                                          "end": {
                                            "line": 521,
                                            "column": 69
                                          }
                                        },
                                        "name": "stepAngle"
                                      },
                                      "operator": "*",
                                      "right": {
                                        "type": "BinaryExpression",
                                        "start": 20207,
                                        "end": 20210,
                                        "loc": {
                                          "start": {
                                            "line": 521,
                                            "column": 73
                                          },
                                          "end": {
                                            "line": 521,
                                            "column": 76
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 20207,
                                          "end": 20208,
                                          "loc": {
                                            "start": {
                                              "line": 521,
                                              "column": 73
                                            },
                                            "end": {
                                              "line": 521,
                                              "column": 74
                                            }
                                          },
                                          "name": "i"
                                        },
                                        "operator": "-",
                                        "right": {
                                          "type": "Literal",
                                          "start": 20209,
                                          "end": 20210,
                                          "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": 19960,
                          "end": 19991,
                          "loc": {
                            "start": {
                              "line": 517,
                              "column": 44
                            },
                            "end": {
                              "line": 517,
                              "column": 75
                            }
                          },
                          "range": [
                            19960,
                            19991
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 20233,
                      "end": 20298,
                      "loc": {
                        "start": {
                          "line": 523,
                          "column": 8
                        },
                        "end": {
                          "line": 523,
                          "column": 73
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 20233,
                        "end": 20297,
                        "loc": {
                          "start": {
                            "line": 523,
                            "column": 8
                          },
                          "end": {
                            "line": 523,
                            "column": 72
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 20233,
                          "end": 20273,
                          "loc": {
                            "start": {
                              "line": 523,
                              "column": 8
                            },
                            "end": {
                              "line": 523,
                              "column": 48
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 20233,
                            "end": 20268,
                            "loc": {
                              "start": {
                                "line": 523,
                                "column": 8
                              },
                              "end": {
                                "line": 523,
                                "column": 43
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 20233,
                              "end": 20259,
                              "loc": {
                                "start": {
                                  "line": 523,
                                  "column": 8
                                },
                                "end": {
                                  "line": 523,
                                  "column": 34
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 20233,
                                "end": 20237,
                                "loc": {
                                  "start": {
                                    "line": 523,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 523,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 20238,
                                "end": 20259,
                                "loc": {
                                  "start": {
                                    "line": 523,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 523,
                                    "column": 34
                                  }
                                },
                                "name": "auxiliaryConstruction"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 20260,
                              "end": 20268,
                              "loc": {
                                "start": {
                                  "line": 523,
                                  "column": 35
                                },
                                "end": {
                                  "line": 523,
                                  "column": 43
                                }
                              },
                              "name": "position"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 20269,
                            "end": 20273,
                            "loc": {
                              "start": {
                                "line": 523,
                                "column": 44
                              },
                              "end": {
                                "line": 523,
                                "column": 48
                              }
                            },
                            "name": "copy"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 20274,
                            "end": 20296,
                            "loc": {
                              "start": {
                                "line": 523,
                                "column": 49
                              },
                              "end": {
                                "line": 523,
                                "column": 71
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 20274,
                              "end": 20287,
                              "loc": {
                                "start": {
                                  "line": 523,
                                  "column": 49
                                },
                                "end": {
                                  "line": 523,
                                  "column": 62
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 20274,
                                "end": 20278,
                                "loc": {
                                  "start": {
                                    "line": 523,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 523,
                                    "column": 53
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 20279,
                                "end": 20287,
                                "loc": {
                                  "start": {
                                    "line": 523,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 523,
                                    "column": 62
                                  }
                                },
                                "name": "interact"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 20288,
                              "end": 20296,
                              "loc": {
                                "start": {
                                  "line": 523,
                                  "column": 63
                                },
                                "end": {
                                  "line": 523,
                                  "column": 71
                                }
                              },
                              "name": "position"
                            },
                            "computed": false
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 20308,
                      "end": 20343,
                      "loc": {
                        "start": {
                          "line": 525,
                          "column": 8
                        },
                        "end": {
                          "line": 525,
                          "column": 43
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 20308,
                        "end": 20342,
                        "loc": {
                          "start": {
                            "line": 525,
                            "column": 8
                          },
                          "end": {
                            "line": 525,
                            "column": 42
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 20308,
                          "end": 20335,
                          "loc": {
                            "start": {
                              "line": 525,
                              "column": 8
                            },
                            "end": {
                              "line": 525,
                              "column": 35
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 20308,
                            "end": 20316,
                            "loc": {
                              "start": {
                                "line": 525,
                                "column": 8
                              },
                              "end": {
                                "line": 525,
                                "column": 16
                              }
                            },
                            "name": "geometry"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 20317,
                            "end": 20335,
                            "loc": {
                              "start": {
                                "line": 525,
                                "column": 17
                              },
                              "end": {
                                "line": 525,
                                "column": 35
                              }
                            },
                            "name": "verticesNeedUpdate"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 20338,
                          "end": 20342,
                          "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": 20354,
                  "end": 20388,
                  "loc": {
                    "start": {
                      "line": 527,
                      "column": 4
                    },
                    "end": {
                      "line": 527,
                      "column": 38
                    }
                  },
                  "range": [
                    20354,
                    20388
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 20393,
              "end": 20459,
              "loc": {
                "start": {
                  "line": 528,
                  "column": 4
                },
                "end": {
                  "line": 530,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 20393,
                "end": 20407,
                "loc": {
                  "start": {
                    "line": 528,
                    "column": 4
                  },
                  "end": {
                    "line": 528,
                    "column": 18
                  }
                },
                "name": "getSizingPoint",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 20407,
                "end": 20459,
                "loc": {
                  "start": {
                    "line": 528,
                    "column": 18
                  },
                  "end": {
                    "line": 530,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 20410,
                  "end": 20459,
                  "loc": {
                    "start": {
                      "line": 528,
                      "column": 21
                    },
                    "end": {
                      "line": 530,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 20420,
                      "end": 20453,
                      "loc": {
                        "start": {
                          "line": 529,
                          "column": 8
                        },
                        "end": {
                          "line": 529,
                          "column": 41
                        }
                      },
                      "argument": {
                        "type": "MemberExpression",
                        "start": 20427,
                        "end": 20452,
                        "loc": {
                          "start": {
                            "line": 529,
                            "column": 15
                          },
                          "end": {
                            "line": 529,
                            "column": 40
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 20427,
                          "end": 20443,
                          "loc": {
                            "start": {
                              "line": 529,
                              "column": 15
                            },
                            "end": {
                              "line": 529,
                              "column": 31
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 20427,
                            "end": 20431,
                            "loc": {
                              "start": {
                                "line": 529,
                                "column": 15
                              },
                              "end": {
                                "line": 529,
                                "column": 19
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 20432,
                            "end": 20443,
                            "loc": {
                              "start": {
                                "line": 529,
                                "column": 20
                              },
                              "end": {
                                "line": 529,
                                "column": 31
                              }
                            },
                            "name": "centerPoint"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 20444,
                          "end": 20452,
                          "loc": {
                            "start": {
                              "line": 529,
                              "column": 32
                            },
                            "end": {
                              "line": 529,
                              "column": 40
                            }
                          },
                          "name": "position"
                        },
                        "computed": false
                      }
                    }
                  ]
                }
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": "required methods for updateSizes",
                  "start": 20354,
                  "end": 20388,
                  "loc": {
                    "start": {
                      "line": 527,
                      "column": 4
                    },
                    "end": {
                      "line": 527,
                      "column": 38
                    }
                  },
                  "range": [
                    20354,
                    20388
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 20464,
              "end": 20632,
              "loc": {
                "start": {
                  "line": 531,
                  "column": 4
                },
                "end": {
                  "line": 535,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 20464,
                "end": 20476,
                "loc": {
                  "start": {
                    "line": 531,
                    "column": 4
                  },
                  "end": {
                    "line": 531,
                    "column": 16
                  }
                },
                "name": "setGeomSizes"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 20476,
                "end": 20632,
                "loc": {
                  "start": {
                    "line": 531,
                    "column": 16
                  },
                  "end": {
                    "line": 535,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 20477,
                    "end": 20482,
                    "loc": {
                      "start": {
                        "line": 531,
                        "column": 17
                      },
                      "end": {
                        "line": 531,
                        "column": 22
                      }
                    },
                    "name": "sizes"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 20484,
                  "end": 20632,
                  "loc": {
                    "start": {
                      "line": 531,
                      "column": 24
                    },
                    "end": {
                      "line": 535,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 20494,
                      "end": 20516,
                      "loc": {
                        "start": {
                          "line": 532,
                          "column": 8
                        },
                        "end": {
                          "line": 532,
                          "column": 30
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 20494,
                        "end": 20515,
                        "loc": {
                          "start": {
                            "line": 532,
                            "column": 8
                          },
                          "end": {
                            "line": 532,
                            "column": 29
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 20494,
                          "end": 20504,
                          "loc": {
                            "start": {
                              "line": 532,
                              "column": 8
                            },
                            "end": {
                              "line": 532,
                              "column": 18
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 20494,
                            "end": 20498,
                            "loc": {
                              "start": {
                                "line": 532,
                                "column": 8
                              },
                              "end": {
                                "line": 532,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 20499,
                            "end": 20504,
                            "loc": {
                              "start": {
                                "line": 532,
                                "column": 13
                              },
                              "end": {
                                "line": 532,
                                "column": 18
                              }
                            },
                            "name": "width"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 20507,
                          "end": 20515,
                          "loc": {
                            "start": {
                              "line": 532,
                              "column": 21
                            },
                            "end": {
                              "line": 532,
                              "column": 29
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 20507,
                            "end": 20512,
                            "loc": {
                              "start": {
                                "line": 532,
                                "column": 21
                              },
                              "end": {
                                "line": 532,
                                "column": 26
                              }
                            },
                            "name": "sizes"
                          },
                          "property": {
                            "type": "Literal",
                            "start": 20513,
                            "end": 20514,
                            "loc": {
                              "start": {
                                "line": 532,
                                "column": 27
                              },
                              "end": {
                                "line": 532,
                                "column": 28
                              }
                            },
                            "value": 0,
                            "rawValue": 0,
                            "raw": "0"
                          },
                          "computed": true
                        }
                      }
                    },
                    {
                      "type": "IfStatement",
                      "start": 20525,
                      "end": 20626,
                      "loc": {
                        "start": {
                          "line": 533,
                          "column": 8
                        },
                        "end": {
                          "line": 534,
                          "column": 62
                        }
                      },
                      "test": {
                        "type": "MemberExpression",
                        "start": 20529,
                        "end": 20562,
                        "loc": {
                          "start": {
                            "line": 533,
                            "column": 12
                          },
                          "end": {
                            "line": 533,
                            "column": 45
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 20529,
                          "end": 20554,
                          "loc": {
                            "start": {
                              "line": 533,
                              "column": 12
                            },
                            "end": {
                              "line": 533,
                              "column": 37
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 20529,
                            "end": 20533,
                            "loc": {
                              "start": {
                                "line": 533,
                                "column": 12
                              },
                              "end": {
                                "line": 533,
                                "column": 16
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 20534,
                            "end": 20554,
                            "loc": {
                              "start": {
                                "line": 533,
                                "column": 17
                              },
                              "end": {
                                "line": 533,
                                "column": 37
                              }
                            },
                            "name": "constraintsSubstrate"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 20555,
                          "end": 20562,
                          "loc": {
                            "start": {
                              "line": 533,
                              "column": 38
                            },
                            "end": {
                              "line": 533,
                              "column": 45
                            }
                          },
                          "name": "visible"
                        },
                        "computed": false
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 20576,
                        "end": 20626,
                        "loc": {
                          "start": {
                            "line": 534,
                            "column": 12
                          },
                          "end": {
                            "line": 534,
                            "column": 62
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 20576,
                          "end": 20625,
                          "loc": {
                            "start": {
                              "line": 534,
                              "column": 12
                            },
                            "end": {
                              "line": 534,
                              "column": 61
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 20576,
                            "end": 20619,
                            "loc": {
                              "start": {
                                "line": 534,
                                "column": 12
                              },
                              "end": {
                                "line": 534,
                                "column": 55
                              }
                            },
                            "object": {
                              "type": "CallExpression",
                              "start": 20576,
                              "end": 20601,
                              "loc": {
                                "start": {
                                  "line": 534,
                                  "column": 12
                                },
                                "end": {
                                  "line": 534,
                                  "column": 37
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 20576,
                                "end": 20595,
                                "loc": {
                                  "start": {
                                    "line": 534,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 534,
                                    "column": 31
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 20576,
                                  "end": 20582,
                                  "loc": {
                                    "start": {
                                      "line": 534,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 534,
                                      "column": 18
                                    }
                                  },
                                  "name": "Sketch"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 20583,
                                  "end": 20595,
                                  "loc": {
                                    "start": {
                                      "line": 534,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 534,
                                      "column": 31
                                    }
                                  },
                                  "name": "FindSketchOf"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ThisExpression",
                                  "start": 20596,
                                  "end": 20600,
                                  "loc": {
                                    "start": {
                                      "line": 534,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 534,
                                      "column": 36
                                    }
                                  }
                                }
                              ]
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 20602,
                              "end": 20619,
                              "loc": {
                                "start": {
                                  "line": 534,
                                  "column": 38
                                },
                                "end": {
                                  "line": 534,
                                  "column": 55
                                }
                              },
                              "name": "updateConstraints"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "ThisExpression",
                              "start": 20620,
                              "end": 20624,
                              "loc": {
                                "start": {
                                  "line": 534,
                                  "column": 56
                                },
                                "end": {
                                  "line": 534,
                                  "column": 60
                                }
                              }
                            }
                          ]
                        }
                      },
                      "alternate": null
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 20638,
              "end": 20969,
              "loc": {
                "start": {
                  "line": 537,
                  "column": 4
                },
                "end": {
                  "line": 542,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 20638,
                "end": 20658,
                "loc": {
                  "start": {
                    "line": 537,
                    "column": 4
                  },
                  "end": {
                    "line": 537,
                    "column": 24
                  }
                },
                "name": "getSubstratePosition"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 20658,
                "end": 20969,
                "loc": {
                  "start": {
                    "line": 537,
                    "column": 24
                  },
                  "end": {
                    "line": 542,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 20659,
                    "end": 20662,
                    "loc": {
                      "start": {
                        "line": 537,
                        "column": 25
                      },
                      "end": {
                        "line": 537,
                        "column": 28
                      }
                    },
                    "name": "len"
                  },
                  {
                    "type": "Identifier",
                    "start": 20664,
                    "end": 20668,
                    "loc": {
                      "start": {
                        "line": 537,
                        "column": 30
                      },
                      "end": {
                        "line": 537,
                        "column": 34
                      }
                    },
                    "name": "size"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 20670,
                  "end": 20969,
                  "loc": {
                    "start": {
                      "line": 537,
                      "column": 36
                    },
                    "end": {
                      "line": 542,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 20680,
                      "end": 20730,
                      "loc": {
                        "start": {
                          "line": 538,
                          "column": 8
                        },
                        "end": {
                          "line": 538,
                          "column": 58
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 20684,
                          "end": 20729,
                          "loc": {
                            "start": {
                              "line": 538,
                              "column": 12
                            },
                            "end": {
                              "line": 538,
                              "column": 57
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 20684,
                            "end": 20689,
                            "loc": {
                              "start": {
                                "line": 538,
                                "column": 12
                              },
                              "end": {
                                "line": 538,
                                "column": 17
                              }
                            },
                            "name": "angle"
                          },
                          "init": {
                            "type": "BinaryExpression",
                            "start": 20692,
                            "end": 20729,
                            "loc": {
                              "start": {
                                "line": 538,
                                "column": 20
                              },
                              "end": {
                                "line": 538,
                                "column": 57
                              }
                            },
                            "left": {
                              "type": "BinaryExpression",
                              "start": 20693,
                              "end": 20724,
                              "loc": {
                                "start": {
                                  "line": 538,
                                  "column": 21
                                },
                                "end": {
                                  "line": 538,
                                  "column": 52
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 20693,
                                "end": 20708,
                                "loc": {
                                  "start": {
                                    "line": 538,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 538,
                                    "column": 36
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 20693,
                                  "end": 20697,
                                  "loc": {
                                    "start": {
                                      "line": 538,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 538,
                                      "column": 25
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 20698,
                                  "end": 20708,
                                  "loc": {
                                    "start": {
                                      "line": 538,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 538,
                                      "column": 36
                                    }
                                  },
                                  "name": "angleStart"
                                },
                                "computed": false
                              },
                              "operator": "+",
                              "right": {
                                "type": "MemberExpression",
                                "start": 20711,
                                "end": 20724,
                                "loc": {
                                  "start": {
                                    "line": 538,
                                    "column": 39
                                  },
                                  "end": {
                                    "line": 538,
                                    "column": 52
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 20711,
                                  "end": 20715,
                                  "loc": {
                                    "start": {
                                      "line": 538,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 538,
                                      "column": 43
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 20716,
                                  "end": 20724,
                                  "loc": {
                                    "start": {
                                      "line": 538,
                                      "column": 44
                                    },
                                    "end": {
                                      "line": 538,
                                      "column": 52
                                    }
                                  },
                                  "name": "angleEnd"
                                },
                                "computed": false
                              },
                              "parenthesizedExpression": true
                            },
                            "operator": "/",
                            "right": {
                              "type": "Literal",
                              "start": 20728,
                              "end": 20729,
                              "loc": {
                                "start": {
                                  "line": 538,
                                  "column": 56
                                },
                                "end": {
                                  "line": 538,
                                  "column": 57
                                }
                              },
                              "value": 2,
                              "rawValue": 2,
                              "raw": "2"
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 20739,
                      "end": 20870,
                      "loc": {
                        "start": {
                          "line": 539,
                          "column": 8
                        },
                        "end": {
                          "line": 539,
                          "column": 139
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 20743,
                          "end": 20869,
                          "loc": {
                            "start": {
                              "line": 539,
                              "column": 12
                            },
                            "end": {
                              "line": 539,
                              "column": 138
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 20743,
                            "end": 20749,
                            "loc": {
                              "start": {
                                "line": 539,
                                "column": 12
                              },
                              "end": {
                                "line": 539,
                                "column": 18
                              }
                            },
                            "name": "vector"
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 20752,
                            "end": 20869,
                            "loc": {
                              "start": {
                                "line": 539,
                                "column": 21
                              },
                              "end": {
                                "line": 539,
                                "column": 138
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 20756,
                              "end": 20769,
                              "loc": {
                                "start": {
                                  "line": 539,
                                  "column": 25
                                },
                                "end": {
                                  "line": 539,
                                  "column": 38
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 20756,
                                "end": 20761,
                                "loc": {
                                  "start": {
                                    "line": 539,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 539,
                                    "column": 30
                                  }
                                },
                                "name": "THREE"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 20762,
                                "end": 20769,
                                "loc": {
                                  "start": {
                                    "line": 539,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 539,
                                    "column": 38
                                  }
                                },
                                "name": "Vector3"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "BinaryExpression",
                                "start": 20770,
                                "end": 20816,
                                "loc": {
                                  "start": {
                                    "line": 539,
                                    "column": 39
                                  },
                                  "end": {
                                    "line": 539,
                                    "column": 85
                                  }
                                },
                                "left": {
                                  "type": "BinaryExpression",
                                  "start": 20771,
                                  "end": 20797,
                                  "loc": {
                                    "start": {
                                      "line": 539,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 539,
                                      "column": 66
                                    }
                                  },
                                  "left": {
                                    "type": "BinaryExpression",
                                    "start": 20771,
                                    "end": 20790,
                                    "loc": {
                                      "start": {
                                        "line": 539,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 539,
                                        "column": 59
                                      }
                                    },
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 20771,
                                      "end": 20782,
                                      "loc": {
                                        "start": {
                                          "line": 539,
                                          "column": 40
                                        },
                                        "end": {
                                          "line": 539,
                                          "column": 51
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 20771,
                                        "end": 20775,
                                        "loc": {
                                          "start": {
                                            "line": 539,
                                            "column": 40
                                          },
                                          "end": {
                                            "line": 539,
                                            "column": 44
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 20776,
                                        "end": 20782,
                                        "loc": {
                                          "start": {
                                            "line": 539,
                                            "column": 45
                                          },
                                          "end": {
                                            "line": 539,
                                            "column": 51
                                          }
                                        },
                                        "name": "radius"
                                      },
                                      "computed": false
                                    },
                                    "operator": "+",
                                    "right": {
                                      "type": "BinaryExpression",
                                      "start": 20785,
                                      "end": 20790,
                                      "loc": {
                                        "start": {
                                          "line": 539,
                                          "column": 54
                                        },
                                        "end": {
                                          "line": 539,
                                          "column": 59
                                        }
                                      },
                                      "left": {
                                        "type": "Identifier",
                                        "start": 20785,
                                        "end": 20788,
                                        "loc": {
                                          "start": {
                                            "line": 539,
                                            "column": 54
                                          },
                                          "end": {
                                            "line": 539,
                                            "column": 57
                                          }
                                        },
                                        "name": "len"
                                      },
                                      "operator": "/",
                                      "right": {
                                        "type": "Literal",
                                        "start": 20789,
                                        "end": 20790,
                                        "loc": {
                                          "start": {
                                            "line": 539,
                                            "column": 58
                                          },
                                          "end": {
                                            "line": 539,
                                            "column": 59
                                          }
                                        },
                                        "value": 2,
                                        "rawValue": 2,
                                        "raw": "2"
                                      }
                                    }
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "Identifier",
                                    "start": 20793,
                                    "end": 20797,
                                    "loc": {
                                      "start": {
                                        "line": 539,
                                        "column": 62
                                      },
                                      "end": {
                                        "line": 539,
                                        "column": 66
                                      }
                                    },
                                    "name": "size"
                                  },
                                  "parenthesizedExpression": true
                                },
                                "operator": "*",
                                "right": {
                                  "type": "CallExpression",
                                  "start": 20801,
                                  "end": 20816,
                                  "loc": {
                                    "start": {
                                      "line": 539,
                                      "column": 70
                                    },
                                    "end": {
                                      "line": 539,
                                      "column": 85
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 20801,
                                    "end": 20809,
                                    "loc": {
                                      "start": {
                                        "line": 539,
                                        "column": 70
                                      },
                                      "end": {
                                        "line": 539,
                                        "column": 78
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 20801,
                                      "end": 20805,
                                      "loc": {
                                        "start": {
                                          "line": 539,
                                          "column": 70
                                        },
                                        "end": {
                                          "line": 539,
                                          "column": 74
                                        }
                                      },
                                      "name": "Math"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 20806,
                                      "end": 20809,
                                      "loc": {
                                        "start": {
                                          "line": 539,
                                          "column": 75
                                        },
                                        "end": {
                                          "line": 539,
                                          "column": 78
                                        }
                                      },
                                      "name": "cos"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 20810,
                                      "end": 20815,
                                      "loc": {
                                        "start": {
                                          "line": 539,
                                          "column": 79
                                        },
                                        "end": {
                                          "line": 539,
                                          "column": 84
                                        }
                                      },
                                      "name": "angle"
                                    }
                                  ]
                                }
                              },
                              {
                                "type": "BinaryExpression",
                                "start": 20818,
                                "end": 20865,
                                "loc": {
                                  "start": {
                                    "line": 539,
                                    "column": 87
                                  },
                                  "end": {
                                    "line": 539,
                                    "column": 134
                                  }
                                },
                                "left": {
                                  "type": "BinaryExpression",
                                  "start": 20819,
                                  "end": 20846,
                                  "loc": {
                                    "start": {
                                      "line": 539,
                                      "column": 88
                                    },
                                    "end": {
                                      "line": 539,
                                      "column": 115
                                    }
                                  },
                                  "left": {
                                    "type": "BinaryExpression",
                                    "start": 20819,
                                    "end": 20837,
                                    "loc": {
                                      "start": {
                                        "line": 539,
                                        "column": 88
                                      },
                                      "end": {
                                        "line": 539,
                                        "column": 106
                                      }
                                    },
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 20819,
                                      "end": 20830,
                                      "loc": {
                                        "start": {
                                          "line": 539,
                                          "column": 88
                                        },
                                        "end": {
                                          "line": 539,
                                          "column": 99
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 20819,
                                        "end": 20823,
                                        "loc": {
                                          "start": {
                                            "line": 539,
                                            "column": 88
                                          },
                                          "end": {
                                            "line": 539,
                                            "column": 92
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 20824,
                                        "end": 20830,
                                        "loc": {
                                          "start": {
                                            "line": 539,
                                            "column": 93
                                          },
                                          "end": {
                                            "line": 539,
                                            "column": 99
                                          }
                                        },
                                        "name": "radius"
                                      },
                                      "computed": false
                                    },
                                    "operator": "+",
                                    "right": {
                                      "type": "Identifier",
                                      "start": 20833,
                                      "end": 20837,
                                      "loc": {
                                        "start": {
                                          "line": 539,
                                          "column": 102
                                        },
                                        "end": {
                                          "line": 539,
                                          "column": 106
                                        }
                                      },
                                      "name": "size"
                                    }
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "BinaryExpression",
                                    "start": 20840,
                                    "end": 20846,
                                    "loc": {
                                      "start": {
                                        "line": 539,
                                        "column": 109
                                      },
                                      "end": {
                                        "line": 539,
                                        "column": 115
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 20840,
                                      "end": 20844,
                                      "loc": {
                                        "start": {
                                          "line": 539,
                                          "column": 109
                                        },
                                        "end": {
                                          "line": 539,
                                          "column": 113
                                        }
                                      },
                                      "name": "size"
                                    },
                                    "operator": "/",
                                    "right": {
                                      "type": "Literal",
                                      "start": 20845,
                                      "end": 20846,
                                      "loc": {
                                        "start": {
                                          "line": 539,
                                          "column": 114
                                        },
                                        "end": {
                                          "line": 539,
                                          "column": 115
                                        }
                                      },
                                      "value": 2,
                                      "rawValue": 2,
                                      "raw": "2"
                                    }
                                  },
                                  "parenthesizedExpression": true
                                },
                                "operator": "*",
                                "right": {
                                  "type": "CallExpression",
                                  "start": 20850,
                                  "end": 20865,
                                  "loc": {
                                    "start": {
                                      "line": 539,
                                      "column": 119
                                    },
                                    "end": {
                                      "line": 539,
                                      "column": 134
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 20850,
                                    "end": 20858,
                                    "loc": {
                                      "start": {
                                        "line": 539,
                                        "column": 119
                                      },
                                      "end": {
                                        "line": 539,
                                        "column": 127
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 20850,
                                      "end": 20854,
                                      "loc": {
                                        "start": {
                                          "line": 539,
                                          "column": 119
                                        },
                                        "end": {
                                          "line": 539,
                                          "column": 123
                                        }
                                      },
                                      "name": "Math"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 20855,
                                      "end": 20858,
                                      "loc": {
                                        "start": {
                                          "line": 539,
                                          "column": 124
                                        },
                                        "end": {
                                          "line": 539,
                                          "column": 127
                                        }
                                      },
                                      "name": "sin"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 20859,
                                      "end": 20864,
                                      "loc": {
                                        "start": {
                                          "line": 539,
                                          "column": 128
                                        },
                                        "end": {
                                          "line": 539,
                                          "column": 133
                                        }
                                      },
                                      "name": "angle"
                                    }
                                  ]
                                }
                              },
                              {
                                "type": "Literal",
                                "start": 20867,
                                "end": 20868,
                                "loc": {
                                  "start": {
                                    "line": 539,
                                    "column": 136
                                  },
                                  "end": {
                                    "line": 539,
                                    "column": 137
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 20879,
                      "end": 20943,
                      "loc": {
                        "start": {
                          "line": 540,
                          "column": 8
                        },
                        "end": {
                          "line": 540,
                          "column": 72
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 20883,
                          "end": 20942,
                          "loc": {
                            "start": {
                              "line": 540,
                              "column": 12
                            },
                            "end": {
                              "line": 540,
                              "column": 71
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 20883,
                            "end": 20886,
                            "loc": {
                              "start": {
                                "line": 540,
                                "column": 12
                              },
                              "end": {
                                "line": 540,
                                "column": 15
                              }
                            },
                            "name": "pos"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 20889,
                            "end": 20942,
                            "loc": {
                              "start": {
                                "line": 540,
                                "column": 18
                              },
                              "end": {
                                "line": 540,
                                "column": 71
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 20889,
                              "end": 20926,
                              "loc": {
                                "start": {
                                  "line": 540,
                                  "column": 18
                                },
                                "end": {
                                  "line": 540,
                                  "column": 55
                                }
                              },
                              "object": {
                                "type": "CallExpression",
                                "start": 20889,
                                "end": 20922,
                                "loc": {
                                  "start": {
                                    "line": 540,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 540,
                                    "column": 51
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 20889,
                                  "end": 20920,
                                  "loc": {
                                    "start": {
                                      "line": 540,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 540,
                                      "column": 49
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 20889,
                                    "end": 20914,
                                    "loc": {
                                      "start": {
                                        "line": 540,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 540,
                                        "column": 43
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 20889,
                                      "end": 20905,
                                      "loc": {
                                        "start": {
                                          "line": 540,
                                          "column": 18
                                        },
                                        "end": {
                                          "line": 540,
                                          "column": 34
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 20889,
                                        "end": 20893,
                                        "loc": {
                                          "start": {
                                            "line": 540,
                                            "column": 18
                                          },
                                          "end": {
                                            "line": 540,
                                            "column": 22
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 20894,
                                        "end": 20905,
                                        "loc": {
                                          "start": {
                                            "line": 540,
                                            "column": 23
                                          },
                                          "end": {
                                            "line": 540,
                                            "column": 34
                                          }
                                        },
                                        "name": "centerPoint"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 20906,
                                      "end": 20914,
                                      "loc": {
                                        "start": {
                                          "line": 540,
                                          "column": 35
                                        },
                                        "end": {
                                          "line": 540,
                                          "column": 43
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 20915,
                                    "end": 20920,
                                    "loc": {
                                      "start": {
                                        "line": 540,
                                        "column": 44
                                      },
                                      "end": {
                                        "line": 540,
                                        "column": 49
                                      }
                                    },
                                    "name": "clone"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 20923,
                                "end": 20926,
                                "loc": {
                                  "start": {
                                    "line": 540,
                                    "column": 52
                                  },
                                  "end": {
                                    "line": 540,
                                    "column": 55
                                  }
                                },
                                "name": "add"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "CallExpression",
                                "start": 20927,
                                "end": 20941,
                                "loc": {
                                  "start": {
                                    "line": 540,
                                    "column": 56
                                  },
                                  "end": {
                                    "line": 540,
                                    "column": 70
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 20927,
                                  "end": 20939,
                                  "loc": {
                                    "start": {
                                      "line": 540,
                                      "column": 56
                                    },
                                    "end": {
                                      "line": 540,
                                      "column": 68
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 20927,
                                    "end": 20933,
                                    "loc": {
                                      "start": {
                                        "line": 540,
                                        "column": 56
                                      },
                                      "end": {
                                        "line": 540,
                                        "column": 62
                                      }
                                    },
                                    "name": "vector"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 20934,
                                    "end": 20939,
                                    "loc": {
                                      "start": {
                                        "line": 540,
                                        "column": 63
                                      },
                                      "end": {
                                        "line": 540,
                                        "column": 68
                                      }
                                    },
                                    "name": "clone"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 20952,
                      "end": 20963,
                      "loc": {
                        "start": {
                          "line": 541,
                          "column": 8
                        },
                        "end": {
                          "line": 541,
                          "column": 19
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 20959,
                        "end": 20962,
                        "loc": {
                          "start": {
                            "line": 541,
                            "column": 15
                          },
                          "end": {
                            "line": 541,
                            "column": 18
                          }
                        },
                        "name": "pos"
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 20975,
              "end": 22403,
              "loc": {
                "start": {
                  "line": 544,
                  "column": 4
                },
                "end": {
                  "line": 568,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 20975,
                "end": 20994,
                "loc": {
                  "start": {
                    "line": 544,
                    "column": 4
                  },
                  "end": {
                    "line": 544,
                    "column": 23
                  }
                },
                "name": "updateVisualization"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 20994,
                "end": 22403,
                "loc": {
                  "start": {
                    "line": 544,
                    "column": 23
                  },
                  "end": {
                    "line": 568,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 20997,
                  "end": 22403,
                  "loc": {
                    "start": {
                      "line": 544,
                      "column": 26
                    },
                    "end": {
                      "line": 568,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 21076,
                      "end": 21245,
                      "loc": {
                        "start": {
                          "line": 546,
                          "column": 8
                        },
                        "end": {
                          "line": 548,
                          "column": 10
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 21080,
                          "end": 21244,
                          "loc": {
                            "start": {
                              "line": 546,
                              "column": 12
                            },
                            "end": {
                              "line": 548,
                              "column": 9
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 21080,
                            "end": 21094,
                            "loc": {
                              "start": {
                                "line": 546,
                                "column": 12
                              },
                              "end": {
                                "line": 546,
                                "column": 26
                              }
                            },
                            "name": "areArraysEqual",
                            "leadingComments": null
                          },
                          "init": {
                            "type": "FunctionExpression",
                            "start": 21097,
                            "end": 21244,
                            "loc": {
                              "start": {
                                "line": 546,
                                "column": 29
                              },
                              "end": {
                                "line": 548,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 21106,
                                "end": 21107,
                                "loc": {
                                  "start": {
                                    "line": 546,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 546,
                                    "column": 39
                                  }
                                },
                                "name": "a"
                              },
                              {
                                "type": "Identifier",
                                "start": 21109,
                                "end": 21110,
                                "loc": {
                                  "start": {
                                    "line": 546,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 546,
                                    "column": 42
                                  }
                                },
                                "name": "b"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 21112,
                              "end": 21244,
                              "loc": {
                                "start": {
                                  "line": 546,
                                  "column": 44
                                },
                                "end": {
                                  "line": 548,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ReturnStatement",
                                  "start": 21126,
                                  "end": 21234,
                                  "loc": {
                                    "start": {
                                      "line": 547,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 547,
                                      "column": 120
                                    }
                                  },
                                  "argument": {
                                    "type": "LogicalExpression",
                                    "start": 21133,
                                    "end": 21233,
                                    "loc": {
                                      "start": {
                                        "line": 547,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 547,
                                        "column": 119
                                      }
                                    },
                                    "left": {
                                      "type": "LogicalExpression",
                                      "start": 21133,
                                      "end": 21198,
                                      "loc": {
                                        "start": {
                                          "line": 547,
                                          "column": 19
                                        },
                                        "end": {
                                          "line": 547,
                                          "column": 84
                                        }
                                      },
                                      "left": {
                                        "type": "LogicalExpression",
                                        "start": 21133,
                                        "end": 21173,
                                        "loc": {
                                          "start": {
                                            "line": 547,
                                            "column": 19
                                          },
                                          "end": {
                                            "line": 547,
                                            "column": 59
                                          }
                                        },
                                        "left": {
                                          "type": "BinaryExpression",
                                          "start": 21133,
                                          "end": 21151,
                                          "loc": {
                                            "start": {
                                              "line": 547,
                                              "column": 19
                                            },
                                            "end": {
                                              "line": 547,
                                              "column": 37
                                            }
                                          },
                                          "left": {
                                            "type": "Identifier",
                                            "start": 21133,
                                            "end": 21134,
                                            "loc": {
                                              "start": {
                                                "line": 547,
                                                "column": 19
                                              },
                                              "end": {
                                                "line": 547,
                                                "column": 20
                                              }
                                            },
                                            "name": "a"
                                          },
                                          "operator": "instanceof",
                                          "right": {
                                            "type": "Identifier",
                                            "start": 21146,
                                            "end": 21151,
                                            "loc": {
                                              "start": {
                                                "line": 547,
                                                "column": 32
                                              },
                                              "end": {
                                                "line": 547,
                                                "column": 37
                                              }
                                            },
                                            "name": "Array"
                                          }
                                        },
                                        "operator": "&&",
                                        "right": {
                                          "type": "BinaryExpression",
                                          "start": 21155,
                                          "end": 21173,
                                          "loc": {
                                            "start": {
                                              "line": 547,
                                              "column": 41
                                            },
                                            "end": {
                                              "line": 547,
                                              "column": 59
                                            }
                                          },
                                          "left": {
                                            "type": "Identifier",
                                            "start": 21155,
                                            "end": 21156,
                                            "loc": {
                                              "start": {
                                                "line": 547,
                                                "column": 41
                                              },
                                              "end": {
                                                "line": 547,
                                                "column": 42
                                              }
                                            },
                                            "name": "b"
                                          },
                                          "operator": "instanceof",
                                          "right": {
                                            "type": "Identifier",
                                            "start": 21168,
                                            "end": 21173,
                                            "loc": {
                                              "start": {
                                                "line": 547,
                                                "column": 54
                                              },
                                              "end": {
                                                "line": 547,
                                                "column": 59
                                              }
                                            },
                                            "name": "Array"
                                          }
                                        }
                                      },
                                      "operator": "&&",
                                      "right": {
                                        "type": "BinaryExpression",
                                        "start": 21177,
                                        "end": 21198,
                                        "loc": {
                                          "start": {
                                            "line": 547,
                                            "column": 63
                                          },
                                          "end": {
                                            "line": 547,
                                            "column": 84
                                          }
                                        },
                                        "left": {
                                          "type": "MemberExpression",
                                          "start": 21177,
                                          "end": 21185,
                                          "loc": {
                                            "start": {
                                              "line": 547,
                                              "column": 63
                                            },
                                            "end": {
                                              "line": 547,
                                              "column": 71
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 21177,
                                            "end": 21178,
                                            "loc": {
                                              "start": {
                                                "line": 547,
                                                "column": 63
                                              },
                                              "end": {
                                                "line": 547,
                                                "column": 64
                                              }
                                            },
                                            "name": "a"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 21179,
                                            "end": 21185,
                                            "loc": {
                                              "start": {
                                                "line": 547,
                                                "column": 65
                                              },
                                              "end": {
                                                "line": 547,
                                                "column": 71
                                              }
                                            },
                                            "name": "length"
                                          },
                                          "computed": false
                                        },
                                        "operator": "===",
                                        "right": {
                                          "type": "MemberExpression",
                                          "start": 21190,
                                          "end": 21198,
                                          "loc": {
                                            "start": {
                                              "line": 547,
                                              "column": 76
                                            },
                                            "end": {
                                              "line": 547,
                                              "column": 84
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 21190,
                                            "end": 21191,
                                            "loc": {
                                              "start": {
                                                "line": 547,
                                                "column": 76
                                              },
                                              "end": {
                                                "line": 547,
                                                "column": 77
                                              }
                                            },
                                            "name": "b"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 21192,
                                            "end": 21198,
                                            "loc": {
                                              "start": {
                                                "line": 547,
                                                "column": 78
                                              },
                                              "end": {
                                                "line": 547,
                                                "column": 84
                                              }
                                            },
                                            "name": "length"
                                          },
                                          "computed": false
                                        }
                                      }
                                    },
                                    "operator": "&&",
                                    "right": {
                                      "type": "CallExpression",
                                      "start": 21202,
                                      "end": 21233,
                                      "loc": {
                                        "start": {
                                          "line": 547,
                                          "column": 88
                                        },
                                        "end": {
                                          "line": 547,
                                          "column": 119
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 21202,
                                        "end": 21209,
                                        "loc": {
                                          "start": {
                                            "line": 547,
                                            "column": 88
                                          },
                                          "end": {
                                            "line": 547,
                                            "column": 95
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 21202,
                                          "end": 21203,
                                          "loc": {
                                            "start": {
                                              "line": 547,
                                              "column": 88
                                            },
                                            "end": {
                                              "line": 547,
                                              "column": 89
                                            }
                                          },
                                          "name": "a"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 21204,
                                          "end": 21209,
                                          "loc": {
                                            "start": {
                                              "line": 547,
                                              "column": 90
                                            },
                                            "end": {
                                              "line": 547,
                                              "column": 95
                                            }
                                          },
                                          "name": "every"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "ArrowFunctionExpression",
                                          "start": 21210,
                                          "end": 21232,
                                          "loc": {
                                            "start": {
                                              "line": 547,
                                              "column": 96
                                            },
                                            "end": {
                                              "line": 547,
                                              "column": 118
                                            }
                                          },
                                          "id": null,
                                          "generator": false,
                                          "expression": true,
                                          "async": false,
                                          "params": [
                                            {
                                              "type": "Identifier",
                                              "start": 21211,
                                              "end": 21213,
                                              "loc": {
                                                "start": {
                                                  "line": 547,
                                                  "column": 97
                                                },
                                                "end": {
                                                  "line": 547,
                                                  "column": 99
                                                }
                                              },
                                              "name": "el"
                                            },
                                            {
                                              "type": "Identifier",
                                              "start": 21215,
                                              "end": 21216,
                                              "loc": {
                                                "start": {
                                                  "line": 547,
                                                  "column": 101
                                                },
                                                "end": {
                                                  "line": 547,
                                                  "column": 102
                                                }
                                              },
                                              "name": "i"
                                            }
                                          ],
                                          "body": {
                                            "type": "BinaryExpression",
                                            "start": 21221,
                                            "end": 21232,
                                            "loc": {
                                              "start": {
                                                "line": 547,
                                                "column": 107
                                              },
                                              "end": {
                                                "line": 547,
                                                "column": 118
                                              }
                                            },
                                            "left": {
                                              "type": "Identifier",
                                              "start": 21221,
                                              "end": 21223,
                                              "loc": {
                                                "start": {
                                                  "line": 547,
                                                  "column": 107
                                                },
                                                "end": {
                                                  "line": 547,
                                                  "column": 109
                                                }
                                              },
                                              "name": "el"
                                            },
                                            "operator": "===",
                                            "right": {
                                              "type": "MemberExpression",
                                              "start": 21228,
                                              "end": 21232,
                                              "loc": {
                                                "start": {
                                                  "line": 547,
                                                  "column": 114
                                                },
                                                "end": {
                                                  "line": 547,
                                                  "column": 118
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 21228,
                                                "end": 21229,
                                                "loc": {
                                                  "start": {
                                                    "line": 547,
                                                    "column": 114
                                                  },
                                                  "end": {
                                                    "line": 547,
                                                    "column": 115
                                                  }
                                                },
                                                "name": "b"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 21230,
                                                "end": 21231,
                                                "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": 21007,
                          "end": 21067,
                          "loc": {
                            "start": {
                              "line": 545,
                              "column": 8
                            },
                            "end": {
                              "line": 545,
                              "column": 68
                            }
                          },
                          "range": [
                            21007,
                            21067
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 21255,
                      "end": 21329,
                      "loc": {
                        "start": {
                          "line": 550,
                          "column": 8
                        },
                        "end": {
                          "line": 550,
                          "column": 82
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 21259,
                          "end": 21328,
                          "loc": {
                            "start": {
                              "line": 550,
                              "column": 12
                            },
                            "end": {
                              "line": 550,
                              "column": 81
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 21259,
                            "end": 21268,
                            "loc": {
                              "start": {
                                "line": 550,
                                "column": 12
                              },
                              "end": {
                                "line": 550,
                                "column": 21
                              }
                            },
                            "name": "newParams"
                          },
                          "init": {
                            "type": "ArrayExpression",
                            "start": 21271,
                            "end": 21328,
                            "loc": {
                              "start": {
                                "line": 550,
                                "column": 24
                              },
                              "end": {
                                "line": 550,
                                "column": 81
                              }
                            },
                            "elements": [
                              {
                                "type": "MemberExpression",
                                "start": 21272,
                                "end": 21283,
                                "loc": {
                                  "start": {
                                    "line": 550,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 550,
                                    "column": 36
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 21272,
                                  "end": 21276,
                                  "loc": {
                                    "start": {
                                      "line": 550,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 550,
                                      "column": 29
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 21277,
                                  "end": 21283,
                                  "loc": {
                                    "start": {
                                      "line": 550,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 550,
                                      "column": 36
                                    }
                                  },
                                  "name": "radius"
                                },
                                "computed": false
                              },
                              {
                                "type": "MemberExpression",
                                "start": 21285,
                                "end": 21295,
                                "loc": {
                                  "start": {
                                    "line": 550,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 550,
                                    "column": 48
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 21285,
                                  "end": 21289,
                                  "loc": {
                                    "start": {
                                      "line": 550,
                                      "column": 38
                                    },
                                    "end": {
                                      "line": 550,
                                      "column": 42
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 21290,
                                  "end": 21295,
                                  "loc": {
                                    "start": {
                                      "line": 550,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 550,
                                      "column": 48
                                    }
                                  },
                                  "name": "width"
                                },
                                "computed": false
                              },
                              {
                                "type": "MemberExpression",
                                "start": 21297,
                                "end": 21312,
                                "loc": {
                                  "start": {
                                    "line": 550,
                                    "column": 50
                                  },
                                  "end": {
                                    "line": 550,
                                    "column": 65
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 21297,
                                  "end": 21301,
                                  "loc": {
                                    "start": {
                                      "line": 550,
                                      "column": 50
                                    },
                                    "end": {
                                      "line": 550,
                                      "column": 54
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 21302,
                                  "end": 21312,
                                  "loc": {
                                    "start": {
                                      "line": 550,
                                      "column": 55
                                    },
                                    "end": {
                                      "line": 550,
                                      "column": 65
                                    }
                                  },
                                  "name": "angleStart"
                                },
                                "computed": false
                              },
                              {
                                "type": "MemberExpression",
                                "start": 21314,
                                "end": 21327,
                                "loc": {
                                  "start": {
                                    "line": 550,
                                    "column": 67
                                  },
                                  "end": {
                                    "line": 550,
                                    "column": 80
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 21314,
                                  "end": 21318,
                                  "loc": {
                                    "start": {
                                      "line": 550,
                                      "column": 67
                                    },
                                    "end": {
                                      "line": 550,
                                      "column": 71
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 21319,
                                  "end": 21327,
                                  "loc": {
                                    "start": {
                                      "line": 550,
                                      "column": 72
                                    },
                                    "end": {
                                      "line": 550,
                                      "column": 80
                                    }
                                  },
                                  "name": "angleEnd"
                                },
                                "computed": false
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 21338,
                      "end": 22265,
                      "loc": {
                        "start": {
                          "line": 551,
                          "column": 8
                        },
                        "end": {
                          "line": 565,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 21342,
                        "end": 21399,
                        "loc": {
                          "start": {
                            "line": 551,
                            "column": 12
                          },
                          "end": {
                            "line": 551,
                            "column": 69
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "CallExpression",
                          "start": 21343,
                          "end": 21399,
                          "loc": {
                            "start": {
                              "line": 551,
                              "column": 13
                            },
                            "end": {
                              "line": 551,
                              "column": 69
                            }
                          },
                          "callee": {
                            "type": "Identifier",
                            "start": 21343,
                            "end": 21357,
                            "loc": {
                              "start": {
                                "line": 551,
                                "column": 13
                              },
                              "end": {
                                "line": 551,
                                "column": 27
                              }
                            },
                            "name": "areArraysEqual"
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 21358,
                              "end": 21367,
                              "loc": {
                                "start": {
                                  "line": 551,
                                  "column": 28
                                },
                                "end": {
                                  "line": 551,
                                  "column": 37
                                }
                              },
                              "name": "newParams"
                            },
                            {
                              "type": "MemberExpression",
                              "start": 21369,
                              "end": 21398,
                              "loc": {
                                "start": {
                                  "line": 551,
                                  "column": 39
                                },
                                "end": {
                                  "line": 551,
                                  "column": 68
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 21369,
                                "end": 21387,
                                "loc": {
                                  "start": {
                                    "line": 551,
                                    "column": 39
                                  },
                                  "end": {
                                    "line": 551,
                                    "column": 57
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 21369,
                                  "end": 21378,
                                  "loc": {
                                    "start": {
                                      "line": 551,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 551,
                                      "column": 48
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 21369,
                                    "end": 21373,
                                    "loc": {
                                      "start": {
                                        "line": 551,
                                        "column": 39
                                      },
                                      "end": {
                                        "line": 551,
                                        "column": 43
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 21374,
                                    "end": 21378,
                                    "loc": {
                                      "start": {
                                        "line": 551,
                                        "column": 44
                                      },
                                      "end": {
                                        "line": 551,
                                        "column": 48
                                      }
                                    },
                                    "name": "mesh"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 21379,
                                  "end": 21387,
                                  "loc": {
                                    "start": {
                                      "line": 551,
                                      "column": 49
                                    },
                                    "end": {
                                      "line": 551,
                                      "column": 57
                                    }
                                  },
                                  "name": "geometry"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 21388,
                                "end": 21398,
                                "loc": {
                                  "start": {
                                    "line": 551,
                                    "column": 58
                                  },
                                  "end": {
                                    "line": 551,
                                    "column": 68
                                  }
                                },
                                "name": "parameters"
                              },
                              "computed": false
                            }
                          ]
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 21401,
                        "end": 22265,
                        "loc": {
                          "start": {
                            "line": 551,
                            "column": 71
                          },
                          "end": {
                            "line": 565,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 21478,
                            "end": 21523,
                            "loc": {
                              "start": {
                                "line": 553,
                                "column": 12
                              },
                              "end": {
                                "line": 553,
                                "column": 57
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 21482,
                                "end": 21522,
                                "loc": {
                                  "start": {
                                    "line": 553,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 553,
                                    "column": 56
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 21482,
                                  "end": 21493,
                                  "loc": {
                                    "start": {
                                      "line": 553,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 553,
                                      "column": 27
                                    }
                                  },
                                  "name": "innerRadius",
                                  "leadingComments": null
                                },
                                "init": {
                                  "type": "BinaryExpression",
                                  "start": 21496,
                                  "end": 21522,
                                  "loc": {
                                    "start": {
                                      "line": 553,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 553,
                                      "column": 56
                                    }
                                  },
                                  "left": {
                                    "type": "MemberExpression",
                                    "start": 21496,
                                    "end": 21507,
                                    "loc": {
                                      "start": {
                                        "line": 553,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 553,
                                        "column": 41
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 21496,
                                      "end": 21500,
                                      "loc": {
                                        "start": {
                                          "line": 553,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 553,
                                          "column": 34
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 21501,
                                      "end": 21507,
                                      "loc": {
                                        "start": {
                                          "line": 553,
                                          "column": 35
                                        },
                                        "end": {
                                          "line": 553,
                                          "column": 41
                                        }
                                      },
                                      "name": "radius"
                                    },
                                    "computed": false
                                  },
                                  "operator": "-",
                                  "right": {
                                    "type": "BinaryExpression",
                                    "start": 21510,
                                    "end": 21522,
                                    "loc": {
                                      "start": {
                                        "line": 553,
                                        "column": 44
                                      },
                                      "end": {
                                        "line": 553,
                                        "column": 56
                                      }
                                    },
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 21510,
                                      "end": 21520,
                                      "loc": {
                                        "start": {
                                          "line": 553,
                                          "column": 44
                                        },
                                        "end": {
                                          "line": 553,
                                          "column": 54
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 21510,
                                        "end": 21514,
                                        "loc": {
                                          "start": {
                                            "line": 553,
                                            "column": 44
                                          },
                                          "end": {
                                            "line": 553,
                                            "column": 48
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 21515,
                                        "end": 21520,
                                        "loc": {
                                          "start": {
                                            "line": 553,
                                            "column": 49
                                          },
                                          "end": {
                                            "line": 553,
                                            "column": 54
                                          }
                                        },
                                        "name": "width"
                                      },
                                      "computed": false
                                    },
                                    "operator": "/",
                                    "right": {
                                      "type": "Literal",
                                      "start": 21521,
                                      "end": 21522,
                                      "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": 21415,
                                "end": 21465,
                                "loc": {
                                  "start": {
                                    "line": 552,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 552,
                                    "column": 62
                                  }
                                },
                                "range": [
                                  21415,
                                  21465
                                ]
                              }
                            ]
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 21536,
                            "end": 21581,
                            "loc": {
                              "start": {
                                "line": 554,
                                "column": 12
                              },
                              "end": {
                                "line": 554,
                                "column": 57
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 21540,
                                "end": 21580,
                                "loc": {
                                  "start": {
                                    "line": 554,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 554,
                                    "column": 56
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 21540,
                                  "end": 21551,
                                  "loc": {
                                    "start": {
                                      "line": 554,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 554,
                                      "column": 27
                                    }
                                  },
                                  "name": "outerRadius"
                                },
                                "init": {
                                  "type": "BinaryExpression",
                                  "start": 21554,
                                  "end": 21580,
                                  "loc": {
                                    "start": {
                                      "line": 554,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 554,
                                      "column": 56
                                    }
                                  },
                                  "left": {
                                    "type": "MemberExpression",
                                    "start": 21554,
                                    "end": 21565,
                                    "loc": {
                                      "start": {
                                        "line": 554,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 554,
                                        "column": 41
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 21554,
                                      "end": 21558,
                                      "loc": {
                                        "start": {
                                          "line": 554,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 554,
                                          "column": 34
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 21559,
                                      "end": 21565,
                                      "loc": {
                                        "start": {
                                          "line": 554,
                                          "column": 35
                                        },
                                        "end": {
                                          "line": 554,
                                          "column": 41
                                        }
                                      },
                                      "name": "radius"
                                    },
                                    "computed": false
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "BinaryExpression",
                                    "start": 21568,
                                    "end": 21580,
                                    "loc": {
                                      "start": {
                                        "line": 554,
                                        "column": 44
                                      },
                                      "end": {
                                        "line": 554,
                                        "column": 56
                                      }
                                    },
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 21568,
                                      "end": 21578,
                                      "loc": {
                                        "start": {
                                          "line": 554,
                                          "column": 44
                                        },
                                        "end": {
                                          "line": 554,
                                          "column": 54
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 21568,
                                        "end": 21572,
                                        "loc": {
                                          "start": {
                                            "line": 554,
                                            "column": 44
                                          },
                                          "end": {
                                            "line": 554,
                                            "column": 48
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 21573,
                                        "end": 21578,
                                        "loc": {
                                          "start": {
                                            "line": 554,
                                            "column": 49
                                          },
                                          "end": {
                                            "line": 554,
                                            "column": 54
                                          }
                                        },
                                        "name": "width"
                                      },
                                      "computed": false
                                    },
                                    "operator": "/",
                                    "right": {
                                      "type": "Literal",
                                      "start": 21579,
                                      "end": 21580,
                                      "loc": {
                                        "start": {
                                          "line": 554,
                                          "column": 55
                                        },
                                        "end": {
                                          "line": 554,
                                          "column": 56
                                        }
                                      },
                                      "value": 2,
                                      "rawValue": 2,
                                      "raw": "2"
                                    }
                                  }
                                }
                              }
                            ],
                            "kind": "var"
                          },
                          {
                            "type": "ForStatement",
                            "start": 21594,
                            "end": 22033,
                            "loc": {
                              "start": {
                                "line": 555,
                                "column": 12
                              },
                              "end": {
                                "line": 560,
                                "column": 13
                              }
                            },
                            "init": {
                              "type": "VariableDeclaration",
                              "start": 21599,
                              "end": 21608,
                              "loc": {
                                "start": {
                                  "line": 555,
                                  "column": 17
                                },
                                "end": {
                                  "line": 555,
                                  "column": 26
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 21603,
                                  "end": 21608,
                                  "loc": {
                                    "start": {
                                      "line": 555,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 555,
                                      "column": 26
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 21603,
                                    "end": 21604,
                                    "loc": {
                                      "start": {
                                        "line": 555,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 555,
                                        "column": 22
                                      }
                                    },
                                    "name": "i"
                                  },
                                  "init": {
                                    "type": "Literal",
                                    "start": 21607,
                                    "end": 21608,
                                    "loc": {
                                      "start": {
                                        "line": 555,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 555,
                                        "column": 26
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  }
                                }
                              ],
                              "kind": "var"
                            },
                            "test": {
                              "type": "BinaryExpression",
                              "start": 21610,
                              "end": 21634,
                              "loc": {
                                "start": {
                                  "line": 555,
                                  "column": 28
                                },
                                "end": {
                                  "line": 555,
                                  "column": 52
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 21610,
                                "end": 21611,
                                "loc": {
                                  "start": {
                                    "line": 555,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 555,
                                    "column": 29
                                  }
                                },
                                "name": "i"
                              },
                              "operator": "<=",
                              "right": {
                                "type": "MemberExpression",
                                "start": 21615,
                                "end": 21634,
                                "loc": {
                                  "start": {
                                    "line": 555,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 555,
                                    "column": 52
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 21615,
                                  "end": 21619,
                                  "loc": {
                                    "start": {
                                      "line": 555,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 555,
                                      "column": 37
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 21620,
                                  "end": 21634,
                                  "loc": {
                                    "start": {
                                      "line": 555,
                                      "column": 38
                                    },
                                    "end": {
                                      "line": 555,
                                      "column": 52
                                    }
                                  },
                                  "name": "meshResolution"
                                },
                                "computed": false
                              }
                            },
                            "update": {
                              "type": "UpdateExpression",
                              "start": 21636,
                              "end": 21639,
                              "loc": {
                                "start": {
                                  "line": 555,
                                  "column": 54
                                },
                                "end": {
                                  "line": 555,
                                  "column": 57
                                }
                              },
                              "operator": "++",
                              "prefix": false,
                              "argument": {
                                "type": "Identifier",
                                "start": 21636,
                                "end": 21637,
                                "loc": {
                                  "start": {
                                    "line": 555,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 555,
                                    "column": 55
                                  }
                                },
                                "name": "i"
                              }
                            },
                            "body": {
                              "type": "BlockStatement",
                              "start": 21641,
                              "end": 22033,
                              "loc": {
                                "start": {
                                  "line": 555,
                                  "column": 59
                                },
                                "end": {
                                  "line": 560,
                                  "column": 13
                                }
                              },
                              "body": [
                                {
                                  "type": "VariableDeclaration",
                                  "start": 21659,
                                  "end": 21749,
                                  "loc": {
                                    "start": {
                                      "line": 556,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 556,
                                      "column": 106
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 21663,
                                      "end": 21748,
                                      "loc": {
                                        "start": {
                                          "line": 556,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 556,
                                          "column": 105
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 21663,
                                        "end": 21668,
                                        "loc": {
                                          "start": {
                                            "line": 556,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 556,
                                            "column": 25
                                          }
                                        },
                                        "name": "angle"
                                      },
                                      "init": {
                                        "type": "BinaryExpression",
                                        "start": 21671,
                                        "end": 21748,
                                        "loc": {
                                          "start": {
                                            "line": 556,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 556,
                                            "column": 105
                                          }
                                        },
                                        "left": {
                                          "type": "MemberExpression",
                                          "start": 21671,
                                          "end": 21686,
                                          "loc": {
                                            "start": {
                                              "line": 556,
                                              "column": 28
                                            },
                                            "end": {
                                              "line": 556,
                                              "column": 43
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 21671,
                                            "end": 21675,
                                            "loc": {
                                              "start": {
                                                "line": 556,
                                                "column": 28
                                              },
                                              "end": {
                                                "line": 556,
                                                "column": 32
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 21676,
                                            "end": 21686,
                                            "loc": {
                                              "start": {
                                                "line": 556,
                                                "column": 33
                                              },
                                              "end": {
                                                "line": 556,
                                                "column": 43
                                              }
                                            },
                                            "name": "angleStart"
                                          },
                                          "computed": false
                                        },
                                        "operator": "+",
                                        "right": {
                                          "type": "BinaryExpression",
                                          "start": 21689,
                                          "end": 21748,
                                          "loc": {
                                            "start": {
                                              "line": 556,
                                              "column": 46
                                            },
                                            "end": {
                                              "line": 556,
                                              "column": 105
                                            }
                                          },
                                          "left": {
                                            "type": "BinaryExpression",
                                            "start": 21689,
                                            "end": 21726,
                                            "loc": {
                                              "start": {
                                                "line": 556,
                                                "column": 46
                                              },
                                              "end": {
                                                "line": 556,
                                                "column": 83
                                              }
                                            },
                                            "left": {
                                              "type": "BinaryExpression",
                                              "start": 21690,
                                              "end": 21721,
                                              "loc": {
                                                "start": {
                                                  "line": 556,
                                                  "column": 47
                                                },
                                                "end": {
                                                  "line": 556,
                                                  "column": 78
                                                }
                                              },
                                              "left": {
                                                "type": "MemberExpression",
                                                "start": 21690,
                                                "end": 21703,
                                                "loc": {
                                                  "start": {
                                                    "line": 556,
                                                    "column": 47
                                                  },
                                                  "end": {
                                                    "line": 556,
                                                    "column": 60
                                                  }
                                                },
                                                "object": {
                                                  "type": "ThisExpression",
                                                  "start": 21690,
                                                  "end": 21694,
                                                  "loc": {
                                                    "start": {
                                                      "line": 556,
                                                      "column": 47
                                                    },
                                                    "end": {
                                                      "line": 556,
                                                      "column": 51
                                                    }
                                                  }
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 21695,
                                                  "end": 21703,
                                                  "loc": {
                                                    "start": {
                                                      "line": 556,
                                                      "column": 52
                                                    },
                                                    "end": {
                                                      "line": 556,
                                                      "column": 60
                                                    }
                                                  },
                                                  "name": "angleEnd"
                                                },
                                                "computed": false
                                              },
                                              "operator": "-",
                                              "right": {
                                                "type": "MemberExpression",
                                                "start": 21706,
                                                "end": 21721,
                                                "loc": {
                                                  "start": {
                                                    "line": 556,
                                                    "column": 63
                                                  },
                                                  "end": {
                                                    "line": 556,
                                                    "column": 78
                                                  }
                                                },
                                                "object": {
                                                  "type": "ThisExpression",
                                                  "start": 21706,
                                                  "end": 21710,
                                                  "loc": {
                                                    "start": {
                                                      "line": 556,
                                                      "column": 63
                                                    },
                                                    "end": {
                                                      "line": 556,
                                                      "column": 67
                                                    }
                                                  }
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 21711,
                                                  "end": 21721,
                                                  "loc": {
                                                    "start": {
                                                      "line": 556,
                                                      "column": 68
                                                    },
                                                    "end": {
                                                      "line": 556,
                                                      "column": 78
                                                    }
                                                  },
                                                  "name": "angleStart"
                                                },
                                                "computed": false
                                              },
                                              "parenthesizedExpression": true
                                            },
                                            "operator": "*",
                                            "right": {
                                              "type": "Identifier",
                                              "start": 21725,
                                              "end": 21726,
                                              "loc": {
                                                "start": {
                                                  "line": 556,
                                                  "column": 82
                                                },
                                                "end": {
                                                  "line": 556,
                                                  "column": 83
                                                }
                                              },
                                              "name": "i"
                                            }
                                          },
                                          "operator": "/",
                                          "right": {
                                            "type": "MemberExpression",
                                            "start": 21729,
                                            "end": 21748,
                                            "loc": {
                                              "start": {
                                                "line": 556,
                                                "column": 86
                                              },
                                              "end": {
                                                "line": 556,
                                                "column": 105
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 21729,
                                              "end": 21733,
                                              "loc": {
                                                "start": {
                                                  "line": 556,
                                                  "column": 86
                                                },
                                                "end": {
                                                  "line": 556,
                                                  "column": 90
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 21734,
                                              "end": 21748,
                                              "loc": {
                                                "start": {
                                                  "line": 556,
                                                  "column": 91
                                                },
                                                "end": {
                                                  "line": 556,
                                                  "column": 105
                                                }
                                              },
                                              "name": "meshResolution"
                                            },
                                            "computed": false
                                          }
                                        }
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 21766,
                                  "end": 21817,
                                  "loc": {
                                    "start": {
                                      "line": 557,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 557,
                                      "column": 67
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 21770,
                                      "end": 21792,
                                      "loc": {
                                        "start": {
                                          "line": 557,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 557,
                                          "column": 42
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 21770,
                                        "end": 21774,
                                        "loc": {
                                          "start": {
                                            "line": 557,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 557,
                                            "column": 24
                                          }
                                        },
                                        "name": "dirX"
                                      },
                                      "init": {
                                        "type": "CallExpression",
                                        "start": 21777,
                                        "end": 21792,
                                        "loc": {
                                          "start": {
                                            "line": 557,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 557,
                                            "column": 42
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 21777,
                                          "end": 21785,
                                          "loc": {
                                            "start": {
                                              "line": 557,
                                              "column": 27
                                            },
                                            "end": {
                                              "line": 557,
                                              "column": 35
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 21777,
                                            "end": 21781,
                                            "loc": {
                                              "start": {
                                                "line": 557,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 557,
                                                "column": 31
                                              }
                                            },
                                            "name": "Math"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 21782,
                                            "end": 21785,
                                            "loc": {
                                              "start": {
                                                "line": 557,
                                                "column": 32
                                              },
                                              "end": {
                                                "line": 557,
                                                "column": 35
                                              }
                                            },
                                            "name": "cos"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 21786,
                                            "end": 21791,
                                            "loc": {
                                              "start": {
                                                "line": 557,
                                                "column": 36
                                              },
                                              "end": {
                                                "line": 557,
                                                "column": 41
                                              }
                                            },
                                            "name": "angle"
                                          }
                                        ]
                                      }
                                    },
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 21794,
                                      "end": 21816,
                                      "loc": {
                                        "start": {
                                          "line": 557,
                                          "column": 44
                                        },
                                        "end": {
                                          "line": 557,
                                          "column": 66
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 21794,
                                        "end": 21798,
                                        "loc": {
                                          "start": {
                                            "line": 557,
                                            "column": 44
                                          },
                                          "end": {
                                            "line": 557,
                                            "column": 48
                                          }
                                        },
                                        "name": "dirY"
                                      },
                                      "init": {
                                        "type": "CallExpression",
                                        "start": 21801,
                                        "end": 21816,
                                        "loc": {
                                          "start": {
                                            "line": 557,
                                            "column": 51
                                          },
                                          "end": {
                                            "line": 557,
                                            "column": 66
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 21801,
                                          "end": 21809,
                                          "loc": {
                                            "start": {
                                              "line": 557,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 557,
                                              "column": 59
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 21801,
                                            "end": 21805,
                                            "loc": {
                                              "start": {
                                                "line": 557,
                                                "column": 51
                                              },
                                              "end": {
                                                "line": 557,
                                                "column": 55
                                              }
                                            },
                                            "name": "Math"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 21806,
                                            "end": 21809,
                                            "loc": {
                                              "start": {
                                                "line": 557,
                                                "column": 56
                                              },
                                              "end": {
                                                "line": 557,
                                                "column": 59
                                              }
                                            },
                                            "name": "sin"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 21810,
                                            "end": 21815,
                                            "loc": {
                                              "start": {
                                                "line": 557,
                                                "column": 60
                                              },
                                              "end": {
                                                "line": 557,
                                                "column": 65
                                              }
                                            },
                                            "name": "angle"
                                          }
                                        ]
                                      }
                                    }
                                  ],
                                  "kind": "var"
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 21834,
                                  "end": 21918,
                                  "loc": {
                                    "start": {
                                      "line": 558,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 558,
                                      "column": 100
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 21834,
                                    "end": 21917,
                                    "loc": {
                                      "start": {
                                        "line": 558,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 558,
                                        "column": 99
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 21834,
                                      "end": 21872,
                                      "loc": {
                                        "start": {
                                          "line": 558,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 558,
                                          "column": 54
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 21834,
                                        "end": 21868,
                                        "loc": {
                                          "start": {
                                            "line": 558,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 558,
                                            "column": 50
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 21834,
                                          "end": 21861,
                                          "loc": {
                                            "start": {
                                              "line": 558,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 558,
                                              "column": 43
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 21834,
                                            "end": 21852,
                                            "loc": {
                                              "start": {
                                                "line": 558,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 558,
                                                "column": 34
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 21834,
                                              "end": 21843,
                                              "loc": {
                                                "start": {
                                                  "line": 558,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 558,
                                                  "column": 25
                                                }
                                              },
                                              "object": {
                                                "type": "ThisExpression",
                                                "start": 21834,
                                                "end": 21838,
                                                "loc": {
                                                  "start": {
                                                    "line": 558,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 558,
                                                    "column": 20
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 21839,
                                                "end": 21843,
                                                "loc": {
                                                  "start": {
                                                    "line": 558,
                                                    "column": 21
                                                  },
                                                  "end": {
                                                    "line": 558,
                                                    "column": 25
                                                  }
                                                },
                                                "name": "mesh"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 21844,
                                              "end": 21852,
                                              "loc": {
                                                "start": {
                                                  "line": 558,
                                                  "column": 26
                                                },
                                                "end": {
                                                  "line": 558,
                                                  "column": 34
                                                }
                                              },
                                              "name": "geometry"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 21853,
                                            "end": 21861,
                                            "loc": {
                                              "start": {
                                                "line": 558,
                                                "column": 35
                                              },
                                              "end": {
                                                "line": 558,
                                                "column": 43
                                              }
                                            },
                                            "name": "vertices"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "BinaryExpression",
                                          "start": 21862,
                                          "end": 21867,
                                          "loc": {
                                            "start": {
                                              "line": 558,
                                              "column": 44
                                            },
                                            "end": {
                                              "line": 558,
                                              "column": 49
                                            }
                                          },
                                          "left": {
                                            "type": "BinaryExpression",
                                            "start": 21862,
                                            "end": 21865,
                                            "loc": {
                                              "start": {
                                                "line": 558,
                                                "column": 44
                                              },
                                              "end": {
                                                "line": 558,
                                                "column": 47
                                              }
                                            },
                                            "left": {
                                              "type": "Literal",
                                              "start": 21862,
                                              "end": 21863,
                                              "loc": {
                                                "start": {
                                                  "line": 558,
                                                  "column": 44
                                                },
                                                "end": {
                                                  "line": 558,
                                                  "column": 45
                                                }
                                              },
                                              "value": 2,
                                              "rawValue": 2,
                                              "raw": "2"
                                            },
                                            "operator": "*",
                                            "right": {
                                              "type": "Identifier",
                                              "start": 21864,
                                              "end": 21865,
                                              "loc": {
                                                "start": {
                                                  "line": 558,
                                                  "column": 46
                                                },
                                                "end": {
                                                  "line": 558,
                                                  "column": 47
                                                }
                                              },
                                              "name": "i"
                                            }
                                          },
                                          "operator": "+",
                                          "right": {
                                            "type": "Literal",
                                            "start": 21866,
                                            "end": 21867,
                                            "loc": {
                                              "start": {
                                                "line": 558,
                                                "column": 48
                                              },
                                              "end": {
                                                "line": 558,
                                                "column": 49
                                              }
                                            },
                                            "value": 0,
                                            "rawValue": 0,
                                            "raw": "0"
                                          }
                                        },
                                        "computed": true
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 21869,
                                        "end": 21872,
                                        "loc": {
                                          "start": {
                                            "line": 558,
                                            "column": 51
                                          },
                                          "end": {
                                            "line": 558,
                                            "column": 54
                                          }
                                        },
                                        "name": "set"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "BinaryExpression",
                                        "start": 21873,
                                        "end": 21891,
                                        "loc": {
                                          "start": {
                                            "line": 558,
                                            "column": 55
                                          },
                                          "end": {
                                            "line": 558,
                                            "column": 73
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 21873,
                                          "end": 21884,
                                          "loc": {
                                            "start": {
                                              "line": 558,
                                              "column": 55
                                            },
                                            "end": {
                                              "line": 558,
                                              "column": 66
                                            }
                                          },
                                          "name": "outerRadius"
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 21887,
                                          "end": 21891,
                                          "loc": {
                                            "start": {
                                              "line": 558,
                                              "column": 69
                                            },
                                            "end": {
                                              "line": 558,
                                              "column": 73
                                            }
                                          },
                                          "name": "dirX"
                                        }
                                      },
                                      {
                                        "type": "BinaryExpression",
                                        "start": 21893,
                                        "end": 21911,
                                        "loc": {
                                          "start": {
                                            "line": 558,
                                            "column": 75
                                          },
                                          "end": {
                                            "line": 558,
                                            "column": 93
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 21893,
                                          "end": 21904,
                                          "loc": {
                                            "start": {
                                              "line": 558,
                                              "column": 75
                                            },
                                            "end": {
                                              "line": 558,
                                              "column": 86
                                            }
                                          },
                                          "name": "outerRadius"
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 21907,
                                          "end": 21911,
                                          "loc": {
                                            "start": {
                                              "line": 558,
                                              "column": 89
                                            },
                                            "end": {
                                              "line": 558,
                                              "column": 93
                                            }
                                          },
                                          "name": "dirY"
                                        }
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 21913,
                                        "end": 21916,
                                        "loc": {
                                          "start": {
                                            "line": 558,
                                            "column": 95
                                          },
                                          "end": {
                                            "line": 558,
                                            "column": 98
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0.0"
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 21935,
                                  "end": 22019,
                                  "loc": {
                                    "start": {
                                      "line": 559,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 559,
                                      "column": 100
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 21935,
                                    "end": 22018,
                                    "loc": {
                                      "start": {
                                        "line": 559,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 559,
                                        "column": 99
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 21935,
                                      "end": 21973,
                                      "loc": {
                                        "start": {
                                          "line": 559,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 559,
                                          "column": 54
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 21935,
                                        "end": 21969,
                                        "loc": {
                                          "start": {
                                            "line": 559,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 559,
                                            "column": 50
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 21935,
                                          "end": 21962,
                                          "loc": {
                                            "start": {
                                              "line": 559,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 559,
                                              "column": 43
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 21935,
                                            "end": 21953,
                                            "loc": {
                                              "start": {
                                                "line": 559,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 559,
                                                "column": 34
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 21935,
                                              "end": 21944,
                                              "loc": {
                                                "start": {
                                                  "line": 559,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 559,
                                                  "column": 25
                                                }
                                              },
                                              "object": {
                                                "type": "ThisExpression",
                                                "start": 21935,
                                                "end": 21939,
                                                "loc": {
                                                  "start": {
                                                    "line": 559,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 559,
                                                    "column": 20
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 21940,
                                                "end": 21944,
                                                "loc": {
                                                  "start": {
                                                    "line": 559,
                                                    "column": 21
                                                  },
                                                  "end": {
                                                    "line": 559,
                                                    "column": 25
                                                  }
                                                },
                                                "name": "mesh"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 21945,
                                              "end": 21953,
                                              "loc": {
                                                "start": {
                                                  "line": 559,
                                                  "column": 26
                                                },
                                                "end": {
                                                  "line": 559,
                                                  "column": 34
                                                }
                                              },
                                              "name": "geometry"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 21954,
                                            "end": 21962,
                                            "loc": {
                                              "start": {
                                                "line": 559,
                                                "column": 35
                                              },
                                              "end": {
                                                "line": 559,
                                                "column": 43
                                              }
                                            },
                                            "name": "vertices"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "BinaryExpression",
                                          "start": 21963,
                                          "end": 21968,
                                          "loc": {
                                            "start": {
                                              "line": 559,
                                              "column": 44
                                            },
                                            "end": {
                                              "line": 559,
                                              "column": 49
                                            }
                                          },
                                          "left": {
                                            "type": "BinaryExpression",
                                            "start": 21963,
                                            "end": 21966,
                                            "loc": {
                                              "start": {
                                                "line": 559,
                                                "column": 44
                                              },
                                              "end": {
                                                "line": 559,
                                                "column": 47
                                              }
                                            },
                                            "left": {
                                              "type": "Literal",
                                              "start": 21963,
                                              "end": 21964,
                                              "loc": {
                                                "start": {
                                                  "line": 559,
                                                  "column": 44
                                                },
                                                "end": {
                                                  "line": 559,
                                                  "column": 45
                                                }
                                              },
                                              "value": 2,
                                              "rawValue": 2,
                                              "raw": "2"
                                            },
                                            "operator": "*",
                                            "right": {
                                              "type": "Identifier",
                                              "start": 21965,
                                              "end": 21966,
                                              "loc": {
                                                "start": {
                                                  "line": 559,
                                                  "column": 46
                                                },
                                                "end": {
                                                  "line": 559,
                                                  "column": 47
                                                }
                                              },
                                              "name": "i"
                                            }
                                          },
                                          "operator": "+",
                                          "right": {
                                            "type": "Literal",
                                            "start": 21967,
                                            "end": 21968,
                                            "loc": {
                                              "start": {
                                                "line": 559,
                                                "column": 48
                                              },
                                              "end": {
                                                "line": 559,
                                                "column": 49
                                              }
                                            },
                                            "value": 1,
                                            "rawValue": 1,
                                            "raw": "1"
                                          }
                                        },
                                        "computed": true
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 21970,
                                        "end": 21973,
                                        "loc": {
                                          "start": {
                                            "line": 559,
                                            "column": 51
                                          },
                                          "end": {
                                            "line": 559,
                                            "column": 54
                                          }
                                        },
                                        "name": "set"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "BinaryExpression",
                                        "start": 21974,
                                        "end": 21992,
                                        "loc": {
                                          "start": {
                                            "line": 559,
                                            "column": 55
                                          },
                                          "end": {
                                            "line": 559,
                                            "column": 73
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 21974,
                                          "end": 21985,
                                          "loc": {
                                            "start": {
                                              "line": 559,
                                              "column": 55
                                            },
                                            "end": {
                                              "line": 559,
                                              "column": 66
                                            }
                                          },
                                          "name": "innerRadius"
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 21988,
                                          "end": 21992,
                                          "loc": {
                                            "start": {
                                              "line": 559,
                                              "column": 69
                                            },
                                            "end": {
                                              "line": 559,
                                              "column": 73
                                            }
                                          },
                                          "name": "dirX"
                                        }
                                      },
                                      {
                                        "type": "BinaryExpression",
                                        "start": 21994,
                                        "end": 22012,
                                        "loc": {
                                          "start": {
                                            "line": 559,
                                            "column": 75
                                          },
                                          "end": {
                                            "line": 559,
                                            "column": 93
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 21994,
                                          "end": 22005,
                                          "loc": {
                                            "start": {
                                              "line": 559,
                                              "column": 75
                                            },
                                            "end": {
                                              "line": 559,
                                              "column": 86
                                            }
                                          },
                                          "name": "innerRadius"
                                        },
                                        "operator": "*",
                                        "right": {
                                          "type": "Identifier",
                                          "start": 22008,
                                          "end": 22012,
                                          "loc": {
                                            "start": {
                                              "line": 559,
                                              "column": 89
                                            },
                                            "end": {
                                              "line": 559,
                                              "column": 93
                                            }
                                          },
                                          "name": "dirY"
                                        }
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 22014,
                                        "end": 22017,
                                        "loc": {
                                          "start": {
                                            "line": 559,
                                            "column": 95
                                          },
                                          "end": {
                                            "line": 559,
                                            "column": 98
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0.0"
                                      }
                                    ]
                                  }
                                }
                              ]
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 22046,
                            "end": 22091,
                            "loc": {
                              "start": {
                                "line": 561,
                                "column": 12
                              },
                              "end": {
                                "line": 561,
                                "column": 57
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 22046,
                              "end": 22090,
                              "loc": {
                                "start": {
                                  "line": 561,
                                  "column": 12
                                },
                                "end": {
                                  "line": 561,
                                  "column": 56
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 22046,
                                "end": 22083,
                                "loc": {
                                  "start": {
                                    "line": 561,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 561,
                                    "column": 49
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 22046,
                                  "end": 22064,
                                  "loc": {
                                    "start": {
                                      "line": 561,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 561,
                                      "column": 30
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 22046,
                                    "end": 22055,
                                    "loc": {
                                      "start": {
                                        "line": 561,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 561,
                                        "column": 21
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 22046,
                                      "end": 22050,
                                      "loc": {
                                        "start": {
                                          "line": 561,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 561,
                                          "column": 16
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 22051,
                                      "end": 22055,
                                      "loc": {
                                        "start": {
                                          "line": 561,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 561,
                                          "column": 21
                                        }
                                      },
                                      "name": "mesh"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 22056,
                                    "end": 22064,
                                    "loc": {
                                      "start": {
                                        "line": 561,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 561,
                                        "column": 30
                                      }
                                    },
                                    "name": "geometry"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 22065,
                                  "end": 22083,
                                  "loc": {
                                    "start": {
                                      "line": 561,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 561,
                                      "column": 49
                                    }
                                  },
                                  "name": "verticesNeedUpdate"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "Literal",
                                "start": 22086,
                                "end": 22090,
                                "loc": {
                                  "start": {
                                    "line": 561,
                                    "column": 52
                                  },
                                  "end": {
                                    "line": 561,
                                    "column": 56
                                  }
                                },
                                "value": true,
                                "rawValue": true,
                                "raw": "true"
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 22104,
                            "end": 22144,
                            "loc": {
                              "start": {
                                "line": 562,
                                "column": 12
                              },
                              "end": {
                                "line": 562,
                                "column": 52
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 22104,
                              "end": 22143,
                              "loc": {
                                "start": {
                                  "line": 562,
                                  "column": 12
                                },
                                "end": {
                                  "line": 562,
                                  "column": 51
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 22104,
                                "end": 22141,
                                "loc": {
                                  "start": {
                                    "line": 562,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 562,
                                    "column": 49
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 22104,
                                  "end": 22122,
                                  "loc": {
                                    "start": {
                                      "line": 562,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 562,
                                      "column": 30
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 22104,
                                    "end": 22113,
                                    "loc": {
                                      "start": {
                                        "line": 562,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 562,
                                        "column": 21
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 22104,
                                      "end": 22108,
                                      "loc": {
                                        "start": {
                                          "line": 562,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 562,
                                          "column": 16
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 22109,
                                      "end": 22113,
                                      "loc": {
                                        "start": {
                                          "line": 562,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 562,
                                          "column": 21
                                        }
                                      },
                                      "name": "mesh"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 22114,
                                    "end": 22122,
                                    "loc": {
                                      "start": {
                                        "line": 562,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 562,
                                        "column": 30
                                      }
                                    },
                                    "name": "geometry"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 22123,
                                  "end": 22141,
                                  "loc": {
                                    "start": {
                                      "line": 562,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 562,
                                      "column": 49
                                    }
                                  },
                                  "name": "computeBoundingBox"
                                },
                                "computed": false
                              },
                              "arguments": []
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 22157,
                            "end": 22200,
                            "loc": {
                              "start": {
                                "line": 563,
                                "column": 12
                              },
                              "end": {
                                "line": 563,
                                "column": 55
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 22157,
                              "end": 22199,
                              "loc": {
                                "start": {
                                  "line": 563,
                                  "column": 12
                                },
                                "end": {
                                  "line": 563,
                                  "column": 54
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 22157,
                                "end": 22197,
                                "loc": {
                                  "start": {
                                    "line": 563,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 563,
                                    "column": 52
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 22157,
                                  "end": 22175,
                                  "loc": {
                                    "start": {
                                      "line": 563,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 563,
                                      "column": 30
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 22157,
                                    "end": 22166,
                                    "loc": {
                                      "start": {
                                        "line": 563,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 563,
                                        "column": 21
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 22157,
                                      "end": 22161,
                                      "loc": {
                                        "start": {
                                          "line": 563,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 563,
                                          "column": 16
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 22162,
                                      "end": 22166,
                                      "loc": {
                                        "start": {
                                          "line": 563,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 563,
                                          "column": 21
                                        }
                                      },
                                      "name": "mesh"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 22167,
                                    "end": 22175,
                                    "loc": {
                                      "start": {
                                        "line": 563,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 563,
                                        "column": 30
                                      }
                                    },
                                    "name": "geometry"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 22176,
                                  "end": 22197,
                                  "loc": {
                                    "start": {
                                      "line": 563,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 563,
                                      "column": 52
                                    }
                                  },
                                  "name": "computeBoundingSphere"
                                },
                                "computed": false
                              },
                              "arguments": []
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 22213,
                            "end": 22255,
                            "loc": {
                              "start": {
                                "line": 564,
                                "column": 12
                              },
                              "end": {
                                "line": 564,
                                "column": 54
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 22213,
                              "end": 22254,
                              "loc": {
                                "start": {
                                  "line": 564,
                                  "column": 12
                                },
                                "end": {
                                  "line": 564,
                                  "column": 53
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 22213,
                                "end": 22242,
                                "loc": {
                                  "start": {
                                    "line": 564,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 564,
                                    "column": 41
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 22213,
                                  "end": 22231,
                                  "loc": {
                                    "start": {
                                      "line": 564,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 564,
                                      "column": 30
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 22213,
                                    "end": 22222,
                                    "loc": {
                                      "start": {
                                        "line": 564,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 564,
                                        "column": 21
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 22213,
                                      "end": 22217,
                                      "loc": {
                                        "start": {
                                          "line": 564,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 564,
                                          "column": 16
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 22218,
                                      "end": 22222,
                                      "loc": {
                                        "start": {
                                          "line": 564,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 564,
                                          "column": 21
                                        }
                                      },
                                      "name": "mesh"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 22223,
                                    "end": 22231,
                                    "loc": {
                                      "start": {
                                        "line": 564,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 564,
                                        "column": 30
                                      }
                                    },
                                    "name": "geometry"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 22232,
                                  "end": 22242,
                                  "loc": {
                                    "start": {
                                      "line": 564,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 564,
                                      "column": 41
                                    }
                                  },
                                  "name": "parameters"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "Identifier",
                                "start": 22245,
                                "end": 22254,
                                "loc": {
                                  "start": {
                                    "line": 564,
                                    "column": 44
                                  },
                                  "end": {
                                    "line": 564,
                                    "column": 53
                                  }
                                },
                                "name": "newParams"
                              }
                            }
                          }
                        ]
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 22274,
                      "end": 22325,
                      "loc": {
                        "start": {
                          "line": 566,
                          "column": 8
                        },
                        "end": {
                          "line": 566,
                          "column": 59
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 22274,
                        "end": 22324,
                        "loc": {
                          "start": {
                            "line": 566,
                            "column": 8
                          },
                          "end": {
                            "line": 566,
                            "column": 58
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 22274,
                          "end": 22297,
                          "loc": {
                            "start": {
                              "line": 566,
                              "column": 8
                            },
                            "end": {
                              "line": 566,
                              "column": 31
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 22274,
                            "end": 22292,
                            "loc": {
                              "start": {
                                "line": 566,
                                "column": 8
                              },
                              "end": {
                                "line": 566,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 22274,
                              "end": 22283,
                              "loc": {
                                "start": {
                                  "line": 566,
                                  "column": 8
                                },
                                "end": {
                                  "line": 566,
                                  "column": 17
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 22274,
                                "end": 22278,
                                "loc": {
                                  "start": {
                                    "line": 566,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 566,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 22279,
                                "end": 22283,
                                "loc": {
                                  "start": {
                                    "line": 566,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 566,
                                    "column": 17
                                  }
                                },
                                "name": "mesh"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 22284,
                              "end": 22292,
                              "loc": {
                                "start": {
                                  "line": 566,
                                  "column": 18
                                },
                                "end": {
                                  "line": 566,
                                  "column": 26
                                }
                              },
                              "name": "position"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 22293,
                            "end": 22297,
                            "loc": {
                              "start": {
                                "line": 566,
                                "column": 27
                              },
                              "end": {
                                "line": 566,
                                "column": 31
                              }
                            },
                            "name": "copy"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 22298,
                            "end": 22323,
                            "loc": {
                              "start": {
                                "line": 566,
                                "column": 32
                              },
                              "end": {
                                "line": 566,
                                "column": 57
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 22298,
                              "end": 22314,
                              "loc": {
                                "start": {
                                  "line": 566,
                                  "column": 32
                                },
                                "end": {
                                  "line": 566,
                                  "column": 48
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 22298,
                                "end": 22302,
                                "loc": {
                                  "start": {
                                    "line": 566,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 566,
                                    "column": 36
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 22303,
                                "end": 22314,
                                "loc": {
                                  "start": {
                                    "line": 566,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 566,
                                    "column": 48
                                  }
                                },
                                "name": "centerPoint"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 22315,
                              "end": 22323,
                              "loc": {
                                "start": {
                                  "line": 566,
                                  "column": 49
                                },
                                "end": {
                                  "line": 566,
                                  "column": 57
                                }
                              },
                              "name": "position"
                            },
                            "computed": false
                          }
                        ]
                      }
                    },
                    {
                      "type": "IfStatement",
                      "start": 22334,
                      "end": 22397,
                      "loc": {
                        "start": {
                          "line": 567,
                          "column": 8
                        },
                        "end": {
                          "line": 567,
                          "column": 71
                        }
                      },
                      "test": {
                        "type": "MemberExpression",
                        "start": 22338,
                        "end": 22364,
                        "loc": {
                          "start": {
                            "line": 567,
                            "column": 12
                          },
                          "end": {
                            "line": 567,
                            "column": 38
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 22338,
                          "end": 22342,
                          "loc": {
                            "start": {
                              "line": 567,
                              "column": 12
                            },
                            "end": {
                              "line": 567,
                              "column": 16
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 22343,
                          "end": 22364,
                          "loc": {
                            "start": {
                              "line": 567,
                              "column": 17
                            },
                            "end": {
                              "line": 567,
                              "column": 38
                            }
                          },
                          "name": "auxiliaryConstruction"
                        },
                        "computed": false
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 22366,
                        "end": 22397,
                        "loc": {
                          "start": {
                            "line": 567,
                            "column": 40
                          },
                          "end": {
                            "line": 567,
                            "column": 71
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 22366,
                          "end": 22396,
                          "loc": {
                            "start": {
                              "line": 567,
                              "column": 40
                            },
                            "end": {
                              "line": 567,
                              "column": 70
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 22366,
                            "end": 22394,
                            "loc": {
                              "start": {
                                "line": 567,
                                "column": 40
                              },
                              "end": {
                                "line": 567,
                                "column": 68
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 22366,
                              "end": 22370,
                              "loc": {
                                "start": {
                                  "line": 567,
                                  "column": 40
                                },
                                "end": {
                                  "line": 567,
                                  "column": 44
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 22371,
                              "end": 22394,
                              "loc": {
                                "start": {
                                  "line": 567,
                                  "column": 45
                                },
                                "end": {
                                  "line": 567,
                                  "column": 68
                                }
                              },
                              "name": "updateAuxiliaryGeometry"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      },
                      "alternate": null
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 22409,
              "end": 22669,
              "loc": {
                "start": {
                  "line": 570,
                  "column": 4
                },
                "end": {
                  "line": 577,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 22409,
                "end": 22417,
                "loc": {
                  "start": {
                    "line": 570,
                    "column": 4
                  },
                  "end": {
                    "line": 570,
                    "column": 12
                  }
                },
                "name": "getState"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 22417,
                "end": 22669,
                "loc": {
                  "start": {
                    "line": 570,
                    "column": 12
                  },
                  "end": {
                    "line": 577,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 22420,
                  "end": 22669,
                  "loc": {
                    "start": {
                      "line": 570,
                      "column": 15
                    },
                    "end": {
                      "line": 577,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 22430,
                      "end": 22663,
                      "loc": {
                        "start": {
                          "line": 571,
                          "column": 8
                        },
                        "end": {
                          "line": 576,
                          "column": 11
                        }
                      },
                      "argument": {
                        "type": "NewExpression",
                        "start": 22437,
                        "end": 22662,
                        "loc": {
                          "start": {
                            "line": 571,
                            "column": 15
                          },
                          "end": {
                            "line": 576,
                            "column": 10
                          }
                        },
                        "callee": {
                          "type": "Identifier",
                          "start": 22441,
                          "end": 22444,
                          "loc": {
                            "start": {
                              "line": 571,
                              "column": 19
                            },
                            "end": {
                              "line": 571,
                              "column": 22
                            }
                          },
                          "name": "Map"
                        },
                        "arguments": [
                          {
                            "type": "ArrayExpression",
                            "start": 22445,
                            "end": 22661,
                            "loc": {
                              "start": {
                                "line": 571,
                                "column": 23
                              },
                              "end": {
                                "line": 576,
                                "column": 9
                              }
                            },
                            "elements": [
                              {
                                "type": "ArrayExpression",
                                "start": 22459,
                                "end": 22500,
                                "loc": {
                                  "start": {
                                    "line": 572,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 572,
                                    "column": 53
                                  }
                                },
                                "elements": [
                                  {
                                    "type": "Literal",
                                    "start": 22460,
                                    "end": 22472,
                                    "loc": {
                                      "start": {
                                        "line": 572,
                                        "column": 13
                                      },
                                      "end": {
                                        "line": 572,
                                        "column": 25
                                      }
                                    },
                                    "value": "startPoint",
                                    "rawValue": "startPoint",
                                    "raw": "'startPoint'"
                                  },
                                  {
                                    "type": "CallExpression",
                                    "start": 22474,
                                    "end": 22499,
                                    "loc": {
                                      "start": {
                                        "line": 572,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 572,
                                        "column": 52
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 22474,
                                      "end": 22497,
                                      "loc": {
                                        "start": {
                                          "line": 572,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 572,
                                          "column": 50
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 22474,
                                        "end": 22488,
                                        "loc": {
                                          "start": {
                                            "line": 572,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 572,
                                            "column": 41
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 22474,
                                          "end": 22485,
                                          "loc": {
                                            "start": {
                                              "line": 572,
                                              "column": 27
                                            },
                                            "end": {
                                              "line": 572,
                                              "column": 38
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 22474,
                                            "end": 22478,
                                            "loc": {
                                              "start": {
                                                "line": 572,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 572,
                                                "column": 31
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 22479,
                                            "end": 22485,
                                            "loc": {
                                              "start": {
                                                "line": 572,
                                                "column": 32
                                              },
                                              "end": {
                                                "line": 572,
                                                "column": 38
                                              }
                                            },
                                            "name": "points"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Literal",
                                          "start": 22486,
                                          "end": 22487,
                                          "loc": {
                                            "start": {
                                              "line": 572,
                                              "column": 39
                                            },
                                            "end": {
                                              "line": 572,
                                              "column": 40
                                            }
                                          },
                                          "value": 0,
                                          "rawValue": 0,
                                          "raw": "0"
                                        },
                                        "computed": true
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 22489,
                                        "end": 22497,
                                        "loc": {
                                          "start": {
                                            "line": 572,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 572,
                                            "column": 50
                                          }
                                        },
                                        "name": "getState"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                ]
                              },
                              {
                                "type": "ArrayExpression",
                                "start": 22514,
                                "end": 22553,
                                "loc": {
                                  "start": {
                                    "line": 573,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 573,
                                    "column": 51
                                  }
                                },
                                "elements": [
                                  {
                                    "type": "Literal",
                                    "start": 22515,
                                    "end": 22525,
                                    "loc": {
                                      "start": {
                                        "line": 573,
                                        "column": 13
                                      },
                                      "end": {
                                        "line": 573,
                                        "column": 23
                                      }
                                    },
                                    "value": "endPoint",
                                    "rawValue": "endPoint",
                                    "raw": "'endPoint'"
                                  },
                                  {
                                    "type": "CallExpression",
                                    "start": 22527,
                                    "end": 22552,
                                    "loc": {
                                      "start": {
                                        "line": 573,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 573,
                                        "column": 50
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 22527,
                                      "end": 22550,
                                      "loc": {
                                        "start": {
                                          "line": 573,
                                          "column": 25
                                        },
                                        "end": {
                                          "line": 573,
                                          "column": 48
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 22527,
                                        "end": 22541,
                                        "loc": {
                                          "start": {
                                            "line": 573,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 573,
                                            "column": 39
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 22527,
                                          "end": 22538,
                                          "loc": {
                                            "start": {
                                              "line": 573,
                                              "column": 25
                                            },
                                            "end": {
                                              "line": 573,
                                              "column": 36
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 22527,
                                            "end": 22531,
                                            "loc": {
                                              "start": {
                                                "line": 573,
                                                "column": 25
                                              },
                                              "end": {
                                                "line": 573,
                                                "column": 29
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 22532,
                                            "end": 22538,
                                            "loc": {
                                              "start": {
                                                "line": 573,
                                                "column": 30
                                              },
                                              "end": {
                                                "line": 573,
                                                "column": 36
                                              }
                                            },
                                            "name": "points"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Literal",
                                          "start": 22539,
                                          "end": 22540,
                                          "loc": {
                                            "start": {
                                              "line": 573,
                                              "column": 37
                                            },
                                            "end": {
                                              "line": 573,
                                              "column": 38
                                            }
                                          },
                                          "value": 1,
                                          "rawValue": 1,
                                          "raw": "1"
                                        },
                                        "computed": true
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 22542,
                                        "end": 22550,
                                        "loc": {
                                          "start": {
                                            "line": 573,
                                            "column": 40
                                          },
                                          "end": {
                                            "line": 573,
                                            "column": 48
                                          }
                                        },
                                        "name": "getState"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                ]
                              },
                              {
                                "type": "ArrayExpression",
                                "start": 22567,
                                "end": 22606,
                                "loc": {
                                  "start": {
                                    "line": 574,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 574,
                                    "column": 51
                                  }
                                },
                                "elements": [
                                  {
                                    "type": "Literal",
                                    "start": 22568,
                                    "end": 22576,
                                    "loc": {
                                      "start": {
                                        "line": 574,
                                        "column": 13
                                      },
                                      "end": {
                                        "line": 574,
                                        "column": 21
                                      }
                                    },
                                    "value": "center",
                                    "rawValue": "center",
                                    "raw": "'center'"
                                  },
                                  {
                                    "type": "CallExpression",
                                    "start": 22578,
                                    "end": 22605,
                                    "loc": {
                                      "start": {
                                        "line": 574,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 574,
                                        "column": 50
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 22578,
                                      "end": 22603,
                                      "loc": {
                                        "start": {
                                          "line": 574,
                                          "column": 23
                                        },
                                        "end": {
                                          "line": 574,
                                          "column": 48
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 22578,
                                        "end": 22594,
                                        "loc": {
                                          "start": {
                                            "line": 574,
                                            "column": 23
                                          },
                                          "end": {
                                            "line": 574,
                                            "column": 39
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 22578,
                                          "end": 22582,
                                          "loc": {
                                            "start": {
                                              "line": 574,
                                              "column": 23
                                            },
                                            "end": {
                                              "line": 574,
                                              "column": 27
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 22583,
                                          "end": 22594,
                                          "loc": {
                                            "start": {
                                              "line": 574,
                                              "column": 28
                                            },
                                            "end": {
                                              "line": 574,
                                              "column": 39
                                            }
                                          },
                                          "name": "centerPoint"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 22595,
                                        "end": 22603,
                                        "loc": {
                                          "start": {
                                            "line": 574,
                                            "column": 40
                                          },
                                          "end": {
                                            "line": 574,
                                            "column": 48
                                          }
                                        },
                                        "name": "getState"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                ]
                              },
                              {
                                "type": "ArrayExpression",
                                "start": 22620,
                                "end": 22650,
                                "loc": {
                                  "start": {
                                    "line": 575,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 575,
                                    "column": 42
                                  }
                                },
                                "elements": [
                                  {
                                    "type": "Literal",
                                    "start": 22621,
                                    "end": 22632,
                                    "loc": {
                                      "start": {
                                        "line": 575,
                                        "column": 13
                                      },
                                      "end": {
                                        "line": 575,
                                        "column": 24
                                      }
                                    },
                                    "value": "clockwise",
                                    "rawValue": "clockwise",
                                    "raw": "'clockwise'"
                                  },
                                  {
                                    "type": "UnaryExpression",
                                    "start": 22634,
                                    "end": 22649,
                                    "loc": {
                                      "start": {
                                        "line": 575,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 575,
                                        "column": 41
                                      }
                                    },
                                    "operator": "+",
                                    "prefix": true,
                                    "argument": {
                                      "type": "MemberExpression",
                                      "start": 22635,
                                      "end": 22649,
                                      "loc": {
                                        "start": {
                                          "line": 575,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 575,
                                          "column": 41
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 22635,
                                        "end": 22639,
                                        "loc": {
                                          "start": {
                                            "line": 575,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 575,
                                            "column": 31
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 22640,
                                        "end": 22649,
                                        "loc": {
                                          "start": {
                                            "line": 575,
                                            "column": 32
                                          },
                                          "end": {
                                            "line": 575,
                                            "column": 41
                                          }
                                        },
                                        "name": "clockwise"
                                      },
                                      "computed": false
                                    }
                                  }
                                ]
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 22675,
              "end": 23172,
              "loc": {
                "start": {
                  "line": 579,
                  "column": 4
                },
                "end": {
                  "line": 589,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 22675,
                "end": 22689,
                "loc": {
                  "start": {
                    "line": 579,
                    "column": 4
                  },
                  "end": {
                    "line": 579,
                    "column": 18
                  }
                },
                "name": "applyStateDiff"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 22689,
                "end": 23172,
                "loc": {
                  "start": {
                    "line": 579,
                    "column": 18
                  },
                  "end": {
                    "line": 589,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 22690,
                    "end": 22699,
                    "loc": {
                      "start": {
                        "line": 579,
                        "column": 19
                      },
                      "end": {
                        "line": 579,
                        "column": 28
                      }
                    },
                    "name": "stateDiff"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 22701,
                  "end": 23172,
                  "loc": {
                    "start": {
                      "line": 579,
                      "column": 30
                    },
                    "end": {
                      "line": 589,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 22711,
                      "end": 22815,
                      "loc": {
                        "start": {
                          "line": 580,
                          "column": 8
                        },
                        "end": {
                          "line": 581,
                          "column": 71
                        }
                      },
                      "test": {
                        "type": "CallExpression",
                        "start": 22715,
                        "end": 22742,
                        "loc": {
                          "start": {
                            "line": 580,
                            "column": 12
                          },
                          "end": {
                            "line": 580,
                            "column": 39
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 22715,
                          "end": 22728,
                          "loc": {
                            "start": {
                              "line": 580,
                              "column": 12
                            },
                            "end": {
                              "line": 580,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 22715,
                            "end": 22724,
                            "loc": {
                              "start": {
                                "line": 580,
                                "column": 12
                              },
                              "end": {
                                "line": 580,
                                "column": 21
                              }
                            },
                            "name": "stateDiff"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 22725,
                            "end": 22728,
                            "loc": {
                              "start": {
                                "line": 580,
                                "column": 22
                              },
                              "end": {
                                "line": 580,
                                "column": 25
                              }
                            },
                            "name": "has"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 22729,
                            "end": 22741,
                            "loc": {
                              "start": {
                                "line": 580,
                                "column": 26
                              },
                              "end": {
                                "line": 580,
                                "column": 38
                              }
                            },
                            "value": "startPoint",
                            "rawValue": "startPoint",
                            "raw": "'startPoint'"
                          }
                        ]
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 22756,
                        "end": 22815,
                        "loc": {
                          "start": {
                            "line": 581,
                            "column": 12
                          },
                          "end": {
                            "line": 581,
                            "column": 71
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 22756,
                          "end": 22814,
                          "loc": {
                            "start": {
                              "line": 581,
                              "column": 12
                            },
                            "end": {
                              "line": 581,
                              "column": 70
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 22756,
                            "end": 22785,
                            "loc": {
                              "start": {
                                "line": 581,
                                "column": 12
                              },
                              "end": {
                                "line": 581,
                                "column": 41
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 22756,
                              "end": 22770,
                              "loc": {
                                "start": {
                                  "line": 581,
                                  "column": 12
                                },
                                "end": {
                                  "line": 581,
                                  "column": 26
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 22756,
                                "end": 22767,
                                "loc": {
                                  "start": {
                                    "line": 581,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 581,
                                    "column": 23
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 22756,
                                  "end": 22760,
                                  "loc": {
                                    "start": {
                                      "line": 581,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 581,
                                      "column": 16
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 22761,
                                  "end": 22767,
                                  "loc": {
                                    "start": {
                                      "line": 581,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 581,
                                      "column": 23
                                    }
                                  },
                                  "name": "points"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Literal",
                                "start": 22768,
                                "end": 22769,
                                "loc": {
                                  "start": {
                                    "line": 581,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 581,
                                    "column": 25
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0"
                              },
                              "computed": true
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 22771,
                              "end": 22785,
                              "loc": {
                                "start": {
                                  "line": 581,
                                  "column": 27
                                },
                                "end": {
                                  "line": 581,
                                  "column": 41
                                }
                              },
                              "name": "applyStateDiff"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "CallExpression",
                              "start": 22786,
                              "end": 22813,
                              "loc": {
                                "start": {
                                  "line": 581,
                                  "column": 42
                                },
                                "end": {
                                  "line": 581,
                                  "column": 69
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 22786,
                                "end": 22799,
                                "loc": {
                                  "start": {
                                    "line": 581,
                                    "column": 42
                                  },
                                  "end": {
                                    "line": 581,
                                    "column": 55
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 22786,
                                  "end": 22795,
                                  "loc": {
                                    "start": {
                                      "line": 581,
                                      "column": 42
                                    },
                                    "end": {
                                      "line": 581,
                                      "column": 51
                                    }
                                  },
                                  "name": "stateDiff"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 22796,
                                  "end": 22799,
                                  "loc": {
                                    "start": {
                                      "line": 581,
                                      "column": 52
                                    },
                                    "end": {
                                      "line": 581,
                                      "column": 55
                                    }
                                  },
                                  "name": "get"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 22800,
                                  "end": 22812,
                                  "loc": {
                                    "start": {
                                      "line": 581,
                                      "column": 56
                                    },
                                    "end": {
                                      "line": 581,
                                      "column": 68
                                    }
                                  },
                                  "value": "startPoint",
                                  "rawValue": "startPoint",
                                  "raw": "'startPoint'"
                                }
                              ]
                            }
                          ]
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 22824,
                      "end": 22924,
                      "loc": {
                        "start": {
                          "line": 582,
                          "column": 8
                        },
                        "end": {
                          "line": 583,
                          "column": 69
                        }
                      },
                      "test": {
                        "type": "CallExpression",
                        "start": 22828,
                        "end": 22853,
                        "loc": {
                          "start": {
                            "line": 582,
                            "column": 12
                          },
                          "end": {
                            "line": 582,
                            "column": 37
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 22828,
                          "end": 22841,
                          "loc": {
                            "start": {
                              "line": 582,
                              "column": 12
                            },
                            "end": {
                              "line": 582,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 22828,
                            "end": 22837,
                            "loc": {
                              "start": {
                                "line": 582,
                                "column": 12
                              },
                              "end": {
                                "line": 582,
                                "column": 21
                              }
                            },
                            "name": "stateDiff"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 22838,
                            "end": 22841,
                            "loc": {
                              "start": {
                                "line": 582,
                                "column": 22
                              },
                              "end": {
                                "line": 582,
                                "column": 25
                              }
                            },
                            "name": "has"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 22842,
                            "end": 22852,
                            "loc": {
                              "start": {
                                "line": 582,
                                "column": 26
                              },
                              "end": {
                                "line": 582,
                                "column": 36
                              }
                            },
                            "value": "endPoint",
                            "rawValue": "endPoint",
                            "raw": "'endPoint'"
                          }
                        ]
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 22867,
                        "end": 22924,
                        "loc": {
                          "start": {
                            "line": 583,
                            "column": 12
                          },
                          "end": {
                            "line": 583,
                            "column": 69
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 22867,
                          "end": 22923,
                          "loc": {
                            "start": {
                              "line": 583,
                              "column": 12
                            },
                            "end": {
                              "line": 583,
                              "column": 68
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 22867,
                            "end": 22896,
                            "loc": {
                              "start": {
                                "line": 583,
                                "column": 12
                              },
                              "end": {
                                "line": 583,
                                "column": 41
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 22867,
                              "end": 22881,
                              "loc": {
                                "start": {
                                  "line": 583,
                                  "column": 12
                                },
                                "end": {
                                  "line": 583,
                                  "column": 26
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 22867,
                                "end": 22878,
                                "loc": {
                                  "start": {
                                    "line": 583,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 583,
                                    "column": 23
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 22867,
                                  "end": 22871,
                                  "loc": {
                                    "start": {
                                      "line": 583,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 583,
                                      "column": 16
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 22872,
                                  "end": 22878,
                                  "loc": {
                                    "start": {
                                      "line": 583,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 583,
                                      "column": 23
                                    }
                                  },
                                  "name": "points"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Literal",
                                "start": 22879,
                                "end": 22880,
                                "loc": {
                                  "start": {
                                    "line": 583,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 583,
                                    "column": 25
                                  }
                                },
                                "value": 1,
                                "rawValue": 1,
                                "raw": "1"
                              },
                              "computed": true
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 22882,
                              "end": 22896,
                              "loc": {
                                "start": {
                                  "line": 583,
                                  "column": 27
                                },
                                "end": {
                                  "line": 583,
                                  "column": 41
                                }
                              },
                              "name": "applyStateDiff"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "CallExpression",
                              "start": 22897,
                              "end": 22922,
                              "loc": {
                                "start": {
                                  "line": 583,
                                  "column": 42
                                },
                                "end": {
                                  "line": 583,
                                  "column": 67
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 22897,
                                "end": 22910,
                                "loc": {
                                  "start": {
                                    "line": 583,
                                    "column": 42
                                  },
                                  "end": {
                                    "line": 583,
                                    "column": 55
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 22897,
                                  "end": 22906,
                                  "loc": {
                                    "start": {
                                      "line": 583,
                                      "column": 42
                                    },
                                    "end": {
                                      "line": 583,
                                      "column": 51
                                    }
                                  },
                                  "name": "stateDiff"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 22907,
                                  "end": 22910,
                                  "loc": {
                                    "start": {
                                      "line": 583,
                                      "column": 52
                                    },
                                    "end": {
                                      "line": 583,
                                      "column": 55
                                    }
                                  },
                                  "name": "get"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 22911,
                                  "end": 22921,
                                  "loc": {
                                    "start": {
                                      "line": 583,
                                      "column": 56
                                    },
                                    "end": {
                                      "line": 583,
                                      "column": 66
                                    }
                                  },
                                  "value": "endPoint",
                                  "rawValue": "endPoint",
                                  "raw": "'endPoint'"
                                }
                              ]
                            }
                          ]
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 22933,
                      "end": 23031,
                      "loc": {
                        "start": {
                          "line": 584,
                          "column": 8
                        },
                        "end": {
                          "line": 585,
                          "column": 69
                        }
                      },
                      "test": {
                        "type": "CallExpression",
                        "start": 22937,
                        "end": 22960,
                        "loc": {
                          "start": {
                            "line": 584,
                            "column": 12
                          },
                          "end": {
                            "line": 584,
                            "column": 35
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 22937,
                          "end": 22950,
                          "loc": {
                            "start": {
                              "line": 584,
                              "column": 12
                            },
                            "end": {
                              "line": 584,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 22937,
                            "end": 22946,
                            "loc": {
                              "start": {
                                "line": 584,
                                "column": 12
                              },
                              "end": {
                                "line": 584,
                                "column": 21
                              }
                            },
                            "name": "stateDiff"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 22947,
                            "end": 22950,
                            "loc": {
                              "start": {
                                "line": 584,
                                "column": 22
                              },
                              "end": {
                                "line": 584,
                                "column": 25
                              }
                            },
                            "name": "has"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 22951,
                            "end": 22959,
                            "loc": {
                              "start": {
                                "line": 584,
                                "column": 26
                              },
                              "end": {
                                "line": 584,
                                "column": 34
                              }
                            },
                            "value": "center",
                            "rawValue": "center",
                            "raw": "'center'"
                          }
                        ]
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 22974,
                        "end": 23031,
                        "loc": {
                          "start": {
                            "line": 585,
                            "column": 12
                          },
                          "end": {
                            "line": 585,
                            "column": 69
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 22974,
                          "end": 23030,
                          "loc": {
                            "start": {
                              "line": 585,
                              "column": 12
                            },
                            "end": {
                              "line": 585,
                              "column": 68
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 22974,
                            "end": 23005,
                            "loc": {
                              "start": {
                                "line": 585,
                                "column": 12
                              },
                              "end": {
                                "line": 585,
                                "column": 43
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 22974,
                              "end": 22990,
                              "loc": {
                                "start": {
                                  "line": 585,
                                  "column": 12
                                },
                                "end": {
                                  "line": 585,
                                  "column": 28
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 22974,
                                "end": 22978,
                                "loc": {
                                  "start": {
                                    "line": 585,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 585,
                                    "column": 16
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 22979,
                                "end": 22990,
                                "loc": {
                                  "start": {
                                    "line": 585,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 585,
                                    "column": 28
                                  }
                                },
                                "name": "centerPoint"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 22991,
                              "end": 23005,
                              "loc": {
                                "start": {
                                  "line": 585,
                                  "column": 29
                                },
                                "end": {
                                  "line": 585,
                                  "column": 43
                                }
                              },
                              "name": "applyStateDiff"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "CallExpression",
                              "start": 23006,
                              "end": 23029,
                              "loc": {
                                "start": {
                                  "line": 585,
                                  "column": 44
                                },
                                "end": {
                                  "line": 585,
                                  "column": 67
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 23006,
                                "end": 23019,
                                "loc": {
                                  "start": {
                                    "line": 585,
                                    "column": 44
                                  },
                                  "end": {
                                    "line": 585,
                                    "column": 57
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 23006,
                                  "end": 23015,
                                  "loc": {
                                    "start": {
                                      "line": 585,
                                      "column": 44
                                    },
                                    "end": {
                                      "line": 585,
                                      "column": 53
                                    }
                                  },
                                  "name": "stateDiff"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 23016,
                                  "end": 23019,
                                  "loc": {
                                    "start": {
                                      "line": 585,
                                      "column": 54
                                    },
                                    "end": {
                                      "line": 585,
                                      "column": 57
                                    }
                                  },
                                  "name": "get"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 23020,
                                  "end": 23028,
                                  "loc": {
                                    "start": {
                                      "line": 585,
                                      "column": 58
                                    },
                                    "end": {
                                      "line": 585,
                                      "column": 66
                                    }
                                  },
                                  "value": "center",
                                  "rawValue": "center",
                                  "raw": "'center'"
                                }
                              ]
                            }
                          ]
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 23040,
                      "end": 23135,
                      "loc": {
                        "start": {
                          "line": 586,
                          "column": 8
                        },
                        "end": {
                          "line": 587,
                          "column": 63
                        }
                      },
                      "test": {
                        "type": "CallExpression",
                        "start": 23044,
                        "end": 23070,
                        "loc": {
                          "start": {
                            "line": 586,
                            "column": 12
                          },
                          "end": {
                            "line": 586,
                            "column": 38
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 23044,
                          "end": 23057,
                          "loc": {
                            "start": {
                              "line": 586,
                              "column": 12
                            },
                            "end": {
                              "line": 586,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 23044,
                            "end": 23053,
                            "loc": {
                              "start": {
                                "line": 586,
                                "column": 12
                              },
                              "end": {
                                "line": 586,
                                "column": 21
                              }
                            },
                            "name": "stateDiff"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 23054,
                            "end": 23057,
                            "loc": {
                              "start": {
                                "line": 586,
                                "column": 22
                              },
                              "end": {
                                "line": 586,
                                "column": 25
                              }
                            },
                            "name": "has"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 23058,
                            "end": 23069,
                            "loc": {
                              "start": {
                                "line": 586,
                                "column": 26
                              },
                              "end": {
                                "line": 586,
                                "column": 37
                              }
                            },
                            "value": "clockwise",
                            "rawValue": "clockwise",
                            "raw": "'clockwise'"
                          }
                        ]
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 23084,
                        "end": 23135,
                        "loc": {
                          "start": {
                            "line": 587,
                            "column": 12
                          },
                          "end": {
                            "line": 587,
                            "column": 63
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 23084,
                          "end": 23134,
                          "loc": {
                            "start": {
                              "line": 587,
                              "column": 12
                            },
                            "end": {
                              "line": 587,
                              "column": 62
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "MemberExpression",
                            "start": 23084,
                            "end": 23098,
                            "loc": {
                              "start": {
                                "line": 587,
                                "column": 12
                              },
                              "end": {
                                "line": 587,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 23084,
                              "end": 23088,
                              "loc": {
                                "start": {
                                  "line": 587,
                                  "column": 12
                                },
                                "end": {
                                  "line": 587,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 23089,
                              "end": 23098,
                              "loc": {
                                "start": {
                                  "line": 587,
                                  "column": 17
                                },
                                "end": {
                                  "line": 587,
                                  "column": 26
                                }
                              },
                              "name": "clockwise"
                            },
                            "computed": false
                          },
                          "right": {
                            "type": "BinaryExpression",
                            "start": 23102,
                            "end": 23133,
                            "loc": {
                              "start": {
                                "line": 587,
                                "column": 30
                              },
                              "end": {
                                "line": 587,
                                "column": 61
                              }
                            },
                            "left": {
                              "type": "CallExpression",
                              "start": 23102,
                              "end": 23128,
                              "loc": {
                                "start": {
                                  "line": 587,
                                  "column": 30
                                },
                                "end": {
                                  "line": 587,
                                  "column": 56
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 23102,
                                "end": 23115,
                                "loc": {
                                  "start": {
                                    "line": 587,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 587,
                                    "column": 43
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 23102,
                                  "end": 23111,
                                  "loc": {
                                    "start": {
                                      "line": 587,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 587,
                                      "column": 39
                                    }
                                  },
                                  "name": "stateDiff"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 23112,
                                  "end": 23115,
                                  "loc": {
                                    "start": {
                                      "line": 587,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 587,
                                      "column": 43
                                    }
                                  },
                                  "name": "get"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 23116,
                                  "end": 23127,
                                  "loc": {
                                    "start": {
                                      "line": 587,
                                      "column": 44
                                    },
                                    "end": {
                                      "line": 587,
                                      "column": 55
                                    }
                                  },
                                  "value": "clockwise",
                                  "rawValue": "clockwise",
                                  "raw": "'clockwise'"
                                }
                              ]
                            },
                            "operator": "!=",
                            "right": {
                              "type": "Literal",
                              "start": 23132,
                              "end": 23133,
                              "loc": {
                                "start": {
                                  "line": 587,
                                  "column": 60
                                },
                                "end": {
                                  "line": 587,
                                  "column": 61
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            },
                            "parenthesizedExpression": true
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 23144,
                      "end": 23166,
                      "loc": {
                        "start": {
                          "line": 588,
                          "column": 8
                        },
                        "end": {
                          "line": 588,
                          "column": 30
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 23144,
                        "end": 23165,
                        "loc": {
                          "start": {
                            "line": 588,
                            "column": 8
                          },
                          "end": {
                            "line": 588,
                            "column": 29
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 23144,
                          "end": 23163,
                          "loc": {
                            "start": {
                              "line": 588,
                              "column": 8
                            },
                            "end": {
                              "line": 588,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 23144,
                            "end": 23148,
                            "loc": {
                              "start": {
                                "line": 588,
                                "column": 8
                              },
                              "end": {
                                "line": 588,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 23149,
                            "end": 23163,
                            "loc": {
                              "start": {
                                "line": 588,
                                "column": 13
                              },
                              "end": {
                                "line": 588,
                                "column": 27
                              }
                            },
                            "name": "updateGeometry"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 23178,
              "end": 23750,
              "loc": {
                "start": {
                  "line": 591,
                  "column": 4
                },
                "end": {
                  "line": 604,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 23178,
                "end": 23190,
                "loc": {
                  "start": {
                    "line": 591,
                    "column": 4
                  },
                  "end": {
                    "line": 591,
                    "column": 16
                  }
                },
                "name": "addStateDiff"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 23190,
                "end": 23750,
                "loc": {
                  "start": {
                    "line": 591,
                    "column": 16
                  },
                  "end": {
                    "line": 604,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 23191,
                    "end": 23200,
                    "loc": {
                      "start": {
                        "line": 591,
                        "column": 17
                      },
                      "end": {
                        "line": 591,
                        "column": 26
                      }
                    },
                    "name": "stateDiff"
                  },
                  {
                    "type": "Identifier",
                    "start": 23202,
                    "end": 23207,
                    "loc": {
                      "start": {
                        "line": 591,
                        "column": 28
                      },
                      "end": {
                        "line": 591,
                        "column": 33
                      }
                    },
                    "name": "alpha"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 23209,
                  "end": 23750,
                  "loc": {
                    "start": {
                      "line": 591,
                      "column": 35
                    },
                    "end": {
                      "line": 604,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 23219,
                      "end": 23250,
                      "loc": {
                        "start": {
                          "line": 592,
                          "column": 8
                        },
                        "end": {
                          "line": 592,
                          "column": 39
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 23223,
                        "end": 23241,
                        "loc": {
                          "start": {
                            "line": 592,
                            "column": 12
                          },
                          "end": {
                            "line": 592,
                            "column": 30
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 23223,
                          "end": 23232,
                          "loc": {
                            "start": {
                              "line": 592,
                              "column": 12
                            },
                            "end": {
                              "line": 592,
                              "column": 21
                            }
                          },
                          "name": "stateDiff"
                        },
                        "operator": "===",
                        "right": {
                          "type": "Literal",
                          "start": 23237,
                          "end": 23241,
                          "loc": {
                            "start": {
                              "line": 592,
                              "column": 26
                            },
                            "end": {
                              "line": 592,
                              "column": 30
                            }
                          },
                          "value": null,
                          "rawValue": null,
                          "raw": "null"
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 23243,
                        "end": 23250,
                        "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": 23260,
                          "end": 23295,
                          "loc": {
                            "start": {
                              "line": 594,
                              "column": 8
                            },
                            "end": {
                              "line": 594,
                              "column": 43
                            }
                          },
                          "range": [
                            23260,
                            23295
                          ]
                        }
                      ]
                    },
                    {
                      "type": "IfStatement",
                      "start": 23305,
                      "end": 23414,
                      "loc": {
                        "start": {
                          "line": 596,
                          "column": 8
                        },
                        "end": {
                          "line": 597,
                          "column": 76
                        }
                      },
                      "test": {
                        "type": "CallExpression",
                        "start": 23309,
                        "end": 23336,
                        "loc": {
                          "start": {
                            "line": 596,
                            "column": 12
                          },
                          "end": {
                            "line": 596,
                            "column": 39
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 23309,
                          "end": 23322,
                          "loc": {
                            "start": {
                              "line": 596,
                              "column": 12
                            },
                            "end": {
                              "line": 596,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 23309,
                            "end": 23318,
                            "loc": {
                              "start": {
                                "line": 596,
                                "column": 12
                              },
                              "end": {
                                "line": 596,
                                "column": 21
                              }
                            },
                            "name": "stateDiff",
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 23319,
                            "end": 23322,
                            "loc": {
                              "start": {
                                "line": 596,
                                "column": 22
                              },
                              "end": {
                                "line": 596,
                                "column": 25
                              }
                            },
                            "name": "has"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 23323,
                            "end": 23335,
                            "loc": {
                              "start": {
                                "line": 596,
                                "column": 26
                              },
                              "end": {
                                "line": 596,
                                "column": 38
                              }
                            },
                            "value": "startPoint",
                            "rawValue": "startPoint",
                            "raw": "'startPoint'"
                          }
                        ],
                        "leadingComments": null
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 23350,
                        "end": 23414,
                        "loc": {
                          "start": {
                            "line": 597,
                            "column": 12
                          },
                          "end": {
                            "line": 597,
                            "column": 76
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 23350,
                          "end": 23413,
                          "loc": {
                            "start": {
                              "line": 597,
                              "column": 12
                            },
                            "end": {
                              "line": 597,
                              "column": 75
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 23350,
                            "end": 23377,
                            "loc": {
                              "start": {
                                "line": 597,
                                "column": 12
                              },
                              "end": {
                                "line": 597,
                                "column": 39
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 23350,
                              "end": 23364,
                              "loc": {
                                "start": {
                                  "line": 597,
                                  "column": 12
                                },
                                "end": {
                                  "line": 597,
                                  "column": 26
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 23350,
                                "end": 23361,
                                "loc": {
                                  "start": {
                                    "line": 597,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 597,
                                    "column": 23
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 23350,
                                  "end": 23354,
                                  "loc": {
                                    "start": {
                                      "line": 597,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 597,
                                      "column": 16
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 23355,
                                  "end": 23361,
                                  "loc": {
                                    "start": {
                                      "line": 597,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 597,
                                      "column": 23
                                    }
                                  },
                                  "name": "points"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Literal",
                                "start": 23362,
                                "end": 23363,
                                "loc": {
                                  "start": {
                                    "line": 597,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 597,
                                    "column": 25
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0"
                              },
                              "computed": true
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 23365,
                              "end": 23377,
                              "loc": {
                                "start": {
                                  "line": 597,
                                  "column": 27
                                },
                                "end": {
                                  "line": 597,
                                  "column": 39
                                }
                              },
                              "name": "addStateDiff"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "CallExpression",
                              "start": 23378,
                              "end": 23405,
                              "loc": {
                                "start": {
                                  "line": 597,
                                  "column": 40
                                },
                                "end": {
                                  "line": 597,
                                  "column": 67
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 23378,
                                "end": 23391,
                                "loc": {
                                  "start": {
                                    "line": 597,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 597,
                                    "column": 53
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 23378,
                                  "end": 23387,
                                  "loc": {
                                    "start": {
                                      "line": 597,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 597,
                                      "column": 49
                                    }
                                  },
                                  "name": "stateDiff"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 23388,
                                  "end": 23391,
                                  "loc": {
                                    "start": {
                                      "line": 597,
                                      "column": 50
                                    },
                                    "end": {
                                      "line": 597,
                                      "column": 53
                                    }
                                  },
                                  "name": "get"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 23392,
                                  "end": 23404,
                                  "loc": {
                                    "start": {
                                      "line": 597,
                                      "column": 54
                                    },
                                    "end": {
                                      "line": 597,
                                      "column": 66
                                    }
                                  },
                                  "value": "startPoint",
                                  "rawValue": "startPoint",
                                  "raw": "'startPoint'"
                                }
                              ]
                            },
                            {
                              "type": "Identifier",
                              "start": 23407,
                              "end": 23412,
                              "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": 23260,
                          "end": 23295,
                          "loc": {
                            "start": {
                              "line": 594,
                              "column": 8
                            },
                            "end": {
                              "line": 594,
                              "column": 43
                            }
                          },
                          "range": [
                            23260,
                            23295
                          ]
                        }
                      ]
                    },
                    {
                      "type": "IfStatement",
                      "start": 23423,
                      "end": 23528,
                      "loc": {
                        "start": {
                          "line": 598,
                          "column": 8
                        },
                        "end": {
                          "line": 599,
                          "column": 74
                        }
                      },
                      "test": {
                        "type": "CallExpression",
                        "start": 23427,
                        "end": 23452,
                        "loc": {
                          "start": {
                            "line": 598,
                            "column": 12
                          },
                          "end": {
                            "line": 598,
                            "column": 37
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 23427,
                          "end": 23440,
                          "loc": {
                            "start": {
                              "line": 598,
                              "column": 12
                            },
                            "end": {
                              "line": 598,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 23427,
                            "end": 23436,
                            "loc": {
                              "start": {
                                "line": 598,
                                "column": 12
                              },
                              "end": {
                                "line": 598,
                                "column": 21
                              }
                            },
                            "name": "stateDiff"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 23437,
                            "end": 23440,
                            "loc": {
                              "start": {
                                "line": 598,
                                "column": 22
                              },
                              "end": {
                                "line": 598,
                                "column": 25
                              }
                            },
                            "name": "has"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 23441,
                            "end": 23451,
                            "loc": {
                              "start": {
                                "line": 598,
                                "column": 26
                              },
                              "end": {
                                "line": 598,
                                "column": 36
                              }
                            },
                            "value": "endPoint",
                            "rawValue": "endPoint",
                            "raw": "'endPoint'"
                          }
                        ]
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 23466,
                        "end": 23528,
                        "loc": {
                          "start": {
                            "line": 599,
                            "column": 12
                          },
                          "end": {
                            "line": 599,
                            "column": 74
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 23466,
                          "end": 23527,
                          "loc": {
                            "start": {
                              "line": 599,
                              "column": 12
                            },
                            "end": {
                              "line": 599,
                              "column": 73
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 23466,
                            "end": 23493,
                            "loc": {
                              "start": {
                                "line": 599,
                                "column": 12
                              },
                              "end": {
                                "line": 599,
                                "column": 39
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 23466,
                              "end": 23480,
                              "loc": {
                                "start": {
                                  "line": 599,
                                  "column": 12
                                },
                                "end": {
                                  "line": 599,
                                  "column": 26
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 23466,
                                "end": 23477,
                                "loc": {
                                  "start": {
                                    "line": 599,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 599,
                                    "column": 23
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 23466,
                                  "end": 23470,
                                  "loc": {
                                    "start": {
                                      "line": 599,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 599,
                                      "column": 16
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 23471,
                                  "end": 23477,
                                  "loc": {
                                    "start": {
                                      "line": 599,
                                      "column": 17
                                    },
                                    "end": {
                                      "line": 599,
                                      "column": 23
                                    }
                                  },
                                  "name": "points"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Literal",
                                "start": 23478,
                                "end": 23479,
                                "loc": {
                                  "start": {
                                    "line": 599,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 599,
                                    "column": 25
                                  }
                                },
                                "value": 1,
                                "rawValue": 1,
                                "raw": "1"
                              },
                              "computed": true
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 23481,
                              "end": 23493,
                              "loc": {
                                "start": {
                                  "line": 599,
                                  "column": 27
                                },
                                "end": {
                                  "line": 599,
                                  "column": 39
                                }
                              },
                              "name": "addStateDiff"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "CallExpression",
                              "start": 23494,
                              "end": 23519,
                              "loc": {
                                "start": {
                                  "line": 599,
                                  "column": 40
                                },
                                "end": {
                                  "line": 599,
                                  "column": 65
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 23494,
                                "end": 23507,
                                "loc": {
                                  "start": {
                                    "line": 599,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 599,
                                    "column": 53
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 23494,
                                  "end": 23503,
                                  "loc": {
                                    "start": {
                                      "line": 599,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 599,
                                      "column": 49
                                    }
                                  },
                                  "name": "stateDiff"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 23504,
                                  "end": 23507,
                                  "loc": {
                                    "start": {
                                      "line": 599,
                                      "column": 50
                                    },
                                    "end": {
                                      "line": 599,
                                      "column": 53
                                    }
                                  },
                                  "name": "get"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 23508,
                                  "end": 23518,
                                  "loc": {
                                    "start": {
                                      "line": 599,
                                      "column": 54
                                    },
                                    "end": {
                                      "line": 599,
                                      "column": 64
                                    }
                                  },
                                  "value": "endPoint",
                                  "rawValue": "endPoint",
                                  "raw": "'endPoint'"
                                }
                              ]
                            },
                            {
                              "type": "Identifier",
                              "start": 23521,
                              "end": 23526,
                              "loc": {
                                "start": {
                                  "line": 599,
                                  "column": 67
                                },
                                "end": {
                                  "line": 599,
                                  "column": 72
                                }
                              },
                              "name": "alpha"
                            }
                          ]
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 23537,
                      "end": 23640,
                      "loc": {
                        "start": {
                          "line": 600,
                          "column": 8
                        },
                        "end": {
                          "line": 601,
                          "column": 74
                        }
                      },
                      "test": {
                        "type": "CallExpression",
                        "start": 23541,
                        "end": 23564,
                        "loc": {
                          "start": {
                            "line": 600,
                            "column": 12
                          },
                          "end": {
                            "line": 600,
                            "column": 35
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 23541,
                          "end": 23554,
                          "loc": {
                            "start": {
                              "line": 600,
                              "column": 12
                            },
                            "end": {
                              "line": 600,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 23541,
                            "end": 23550,
                            "loc": {
                              "start": {
                                "line": 600,
                                "column": 12
                              },
                              "end": {
                                "line": 600,
                                "column": 21
                              }
                            },
                            "name": "stateDiff"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 23551,
                            "end": 23554,
                            "loc": {
                              "start": {
                                "line": 600,
                                "column": 22
                              },
                              "end": {
                                "line": 600,
                                "column": 25
                              }
                            },
                            "name": "has"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 23555,
                            "end": 23563,
                            "loc": {
                              "start": {
                                "line": 600,
                                "column": 26
                              },
                              "end": {
                                "line": 600,
                                "column": 34
                              }
                            },
                            "value": "center",
                            "rawValue": "center",
                            "raw": "'center'"
                          }
                        ]
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 23578,
                        "end": 23640,
                        "loc": {
                          "start": {
                            "line": 601,
                            "column": 12
                          },
                          "end": {
                            "line": 601,
                            "column": 74
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 23578,
                          "end": 23639,
                          "loc": {
                            "start": {
                              "line": 601,
                              "column": 12
                            },
                            "end": {
                              "line": 601,
                              "column": 73
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 23578,
                            "end": 23607,
                            "loc": {
                              "start": {
                                "line": 601,
                                "column": 12
                              },
                              "end": {
                                "line": 601,
                                "column": 41
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 23578,
                              "end": 23594,
                              "loc": {
                                "start": {
                                  "line": 601,
                                  "column": 12
                                },
                                "end": {
                                  "line": 601,
                                  "column": 28
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 23578,
                                "end": 23582,
                                "loc": {
                                  "start": {
                                    "line": 601,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 601,
                                    "column": 16
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 23583,
                                "end": 23594,
                                "loc": {
                                  "start": {
                                    "line": 601,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 601,
                                    "column": 28
                                  }
                                },
                                "name": "centerPoint"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 23595,
                              "end": 23607,
                              "loc": {
                                "start": {
                                  "line": 601,
                                  "column": 29
                                },
                                "end": {
                                  "line": 601,
                                  "column": 41
                                }
                              },
                              "name": "addStateDiff"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "CallExpression",
                              "start": 23608,
                              "end": 23631,
                              "loc": {
                                "start": {
                                  "line": 601,
                                  "column": 42
                                },
                                "end": {
                                  "line": 601,
                                  "column": 65
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 23608,
                                "end": 23621,
                                "loc": {
                                  "start": {
                                    "line": 601,
                                    "column": 42
                                  },
                                  "end": {
                                    "line": 601,
                                    "column": 55
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 23608,
                                  "end": 23617,
                                  "loc": {
                                    "start": {
                                      "line": 601,
                                      "column": 42
                                    },
                                    "end": {
                                      "line": 601,
                                      "column": 51
                                    }
                                  },
                                  "name": "stateDiff"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 23618,
                                  "end": 23621,
                                  "loc": {
                                    "start": {
                                      "line": 601,
                                      "column": 52
                                    },
                                    "end": {
                                      "line": 601,
                                      "column": 55
                                    }
                                  },
                                  "name": "get"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 23622,
                                  "end": 23630,
                                  "loc": {
                                    "start": {
                                      "line": 601,
                                      "column": 56
                                    },
                                    "end": {
                                      "line": 601,
                                      "column": 64
                                    }
                                  },
                                  "value": "center",
                                  "rawValue": "center",
                                  "raw": "'center'"
                                }
                              ]
                            },
                            {
                              "type": "Identifier",
                              "start": 23633,
                              "end": 23638,
                              "loc": {
                                "start": {
                                  "line": 601,
                                  "column": 67
                                },
                                "end": {
                                  "line": 601,
                                  "column": 72
                                }
                              },
                              "name": "alpha"
                            }
                          ]
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 23649,
                      "end": 23744,
                      "loc": {
                        "start": {
                          "line": 602,
                          "column": 8
                        },
                        "end": {
                          "line": 603,
                          "column": 63
                        }
                      },
                      "test": {
                        "type": "CallExpression",
                        "start": 23653,
                        "end": 23679,
                        "loc": {
                          "start": {
                            "line": 602,
                            "column": 12
                          },
                          "end": {
                            "line": 602,
                            "column": 38
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 23653,
                          "end": 23666,
                          "loc": {
                            "start": {
                              "line": 602,
                              "column": 12
                            },
                            "end": {
                              "line": 602,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 23653,
                            "end": 23662,
                            "loc": {
                              "start": {
                                "line": 602,
                                "column": 12
                              },
                              "end": {
                                "line": 602,
                                "column": 21
                              }
                            },
                            "name": "stateDiff"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 23663,
                            "end": 23666,
                            "loc": {
                              "start": {
                                "line": 602,
                                "column": 22
                              },
                              "end": {
                                "line": 602,
                                "column": 25
                              }
                            },
                            "name": "has"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 23667,
                            "end": 23678,
                            "loc": {
                              "start": {
                                "line": 602,
                                "column": 26
                              },
                              "end": {
                                "line": 602,
                                "column": 37
                              }
                            },
                            "value": "clockwise",
                            "rawValue": "clockwise",
                            "raw": "'clockwise'"
                          }
                        ]
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 23693,
                        "end": 23744,
                        "loc": {
                          "start": {
                            "line": 603,
                            "column": 12
                          },
                          "end": {
                            "line": 603,
                            "column": 63
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 23693,
                          "end": 23743,
                          "loc": {
                            "start": {
                              "line": 603,
                              "column": 12
                            },
                            "end": {
                              "line": 603,
                              "column": 62
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "MemberExpression",
                            "start": 23693,
                            "end": 23707,
                            "loc": {
                              "start": {
                                "line": 603,
                                "column": 12
                              },
                              "end": {
                                "line": 603,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 23693,
                              "end": 23697,
                              "loc": {
                                "start": {
                                  "line": 603,
                                  "column": 12
                                },
                                "end": {
                                  "line": 603,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 23698,
                              "end": 23707,
                              "loc": {
                                "start": {
                                  "line": 603,
                                  "column": 17
                                },
                                "end": {
                                  "line": 603,
                                  "column": 26
                                }
                              },
                              "name": "clockwise"
                            },
                            "computed": false
                          },
                          "right": {
                            "type": "BinaryExpression",
                            "start": 23711,
                            "end": 23742,
                            "loc": {
                              "start": {
                                "line": 603,
                                "column": 30
                              },
                              "end": {
                                "line": 603,
                                "column": 61
                              }
                            },
                            "left": {
                              "type": "CallExpression",
                              "start": 23711,
                              "end": 23737,
                              "loc": {
                                "start": {
                                  "line": 603,
                                  "column": 30
                                },
                                "end": {
                                  "line": 603,
                                  "column": 56
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 23711,
                                "end": 23724,
                                "loc": {
                                  "start": {
                                    "line": 603,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 603,
                                    "column": 43
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 23711,
                                  "end": 23720,
                                  "loc": {
                                    "start": {
                                      "line": 603,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 603,
                                      "column": 39
                                    }
                                  },
                                  "name": "stateDiff"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 23721,
                                  "end": 23724,
                                  "loc": {
                                    "start": {
                                      "line": 603,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 603,
                                      "column": 43
                                    }
                                  },
                                  "name": "get"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 23725,
                                  "end": 23736,
                                  "loc": {
                                    "start": {
                                      "line": 603,
                                      "column": 44
                                    },
                                    "end": {
                                      "line": 603,
                                      "column": 55
                                    }
                                  },
                                  "value": "clockwise",
                                  "rawValue": "clockwise",
                                  "raw": "'clockwise'"
                                }
                              ]
                            },
                            "operator": "!=",
                            "right": {
                              "type": "Literal",
                              "start": 23741,
                              "end": 23742,
                              "loc": {
                                "start": {
                                  "line": 603,
                                  "column": 60
                                },
                                "end": {
                                  "line": 603,
                                  "column": 61
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            },
                            "parenthesizedExpression": true
                          }
                        }
                      },
                      "alternate": null
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 23756,
              "end": 24008,
              "loc": {
                "start": {
                  "line": 606,
                  "column": 4
                },
                "end": {
                  "line": 613,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 23756,
                "end": 23774,
                "loc": {
                  "start": {
                    "line": 606,
                    "column": 4
                  },
                  "end": {
                    "line": 606,
                    "column": 22
                  }
                },
                "name": "prepareAddOnServer"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 23774,
                "end": 24008,
                "loc": {
                  "start": {
                    "line": 606,
                    "column": 22
                  },
                  "end": {
                    "line": 613,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 23775,
                    "end": 23781,
                    "loc": {
                      "start": {
                        "line": 606,
                        "column": 23
                      },
                      "end": {
                        "line": 606,
                        "column": 29
                      }
                    },
                    "name": "sketch"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 23783,
                  "end": 24008,
                  "loc": {
                    "start": {
                      "line": 606,
                      "column": 31
                    },
                    "end": {
                      "line": 613,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 23793,
                      "end": 24002,
                      "loc": {
                        "start": {
                          "line": 607,
                          "column": 8
                        },
                        "end": {
                          "line": 612,
                          "column": 31
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 23800,
                        "end": 24001,
                        "loc": {
                          "start": {
                            "line": 607,
                            "column": 15
                          },
                          "end": {
                            "line": 612,
                            "column": 30
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 23800,
                          "end": 23986,
                          "loc": {
                            "start": {
                              "line": 607,
                              "column": 15
                            },
                            "end": {
                              "line": 612,
                              "column": 15
                            }
                          },
                          "object": {
                            "type": "CallExpression",
                            "start": 23800,
                            "end": 23981,
                            "loc": {
                              "start": {
                                "line": 607,
                                "column": 15
                              },
                              "end": {
                                "line": 612,
                                "column": 10
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 23800,
                              "end": 23820,
                              "loc": {
                                "start": {
                                  "line": 607,
                                  "column": 15
                                },
                                "end": {
                                  "line": 607,
                                  "column": 35
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 23800,
                                "end": 23809,
                                "loc": {
                                  "start": {
                                    "line": 607,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 607,
                                    "column": 24
                                  }
                                },
                                "name": "Statement"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 23810,
                                "end": 23820,
                                "loc": {
                                  "start": {
                                    "line": 607,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 607,
                                    "column": 35
                                  }
                                },
                                "name": "JSONExport"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "CallExpression",
                                "start": 23821,
                                "end": 23980,
                                "loc": {
                                  "start": {
                                    "line": 607,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 612,
                                    "column": 9
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 23821,
                                  "end": 23838,
                                  "loc": {
                                    "start": {
                                      "line": 607,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 607,
                                      "column": 53
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 23821,
                                    "end": 23831,
                                    "loc": {
                                      "start": {
                                        "line": 607,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 607,
                                        "column": 46
                                      }
                                    },
                                    "name": "Expression"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 23832,
                                    "end": 23838,
                                    "loc": {
                                      "start": {
                                        "line": 607,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 607,
                                        "column": 53
                                      }
                                    },
                                    "name": "AddArc"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 23852,
                                    "end": 23858,
                                    "loc": {
                                      "start": {
                                        "line": 608,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 608,
                                        "column": 18
                                      }
                                    },
                                    "name": "sketch"
                                  },
                                  {
                                    "type": "MemberExpression",
                                    "start": 23872,
                                    "end": 23895,
                                    "loc": {
                                      "start": {
                                        "line": 609,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 609,
                                        "column": 35
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 23872,
                                      "end": 23886,
                                      "loc": {
                                        "start": {
                                          "line": 609,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 609,
                                          "column": 26
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 23872,
                                        "end": 23883,
                                        "loc": {
                                          "start": {
                                            "line": 609,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 609,
                                            "column": 23
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 23872,
                                          "end": 23876,
                                          "loc": {
                                            "start": {
                                              "line": 609,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 609,
                                              "column": 16
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 23877,
                                          "end": 23883,
                                          "loc": {
                                            "start": {
                                              "line": 609,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 609,
                                              "column": 23
                                            }
                                          },
                                          "name": "points"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Literal",
                                        "start": 23884,
                                        "end": 23885,
                                        "loc": {
                                          "start": {
                                            "line": 609,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 609,
                                            "column": 25
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      "computed": true
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 23887,
                                      "end": 23895,
                                      "loc": {
                                        "start": {
                                          "line": 609,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 609,
                                          "column": 35
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  },
                                  {
                                    "type": "CallExpression",
                                    "start": 23909,
                                    "end": 23933,
                                    "loc": {
                                      "start": {
                                        "line": 610,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 610,
                                        "column": 36
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 23909,
                                      "end": 23931,
                                      "loc": {
                                        "start": {
                                          "line": 610,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 610,
                                          "column": 34
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 23909,
                                        "end": 23913,
                                        "loc": {
                                          "start": {
                                            "line": 610,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 610,
                                            "column": 16
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 23914,
                                        "end": 23931,
                                        "loc": {
                                          "start": {
                                            "line": 610,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 610,
                                            "column": 34
                                          }
                                        },
                                        "name": "getMiddlePosition"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  },
                                  {
                                    "type": "MemberExpression",
                                    "start": 23947,
                                    "end": 23970,
                                    "loc": {
                                      "start": {
                                        "line": 611,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 611,
                                        "column": 35
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 23947,
                                      "end": 23961,
                                      "loc": {
                                        "start": {
                                          "line": 611,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 611,
                                          "column": 26
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 23947,
                                        "end": 23958,
                                        "loc": {
                                          "start": {
                                            "line": 611,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 611,
                                            "column": 23
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 23947,
                                          "end": 23951,
                                          "loc": {
                                            "start": {
                                              "line": 611,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 611,
                                              "column": 16
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 23952,
                                          "end": 23958,
                                          "loc": {
                                            "start": {
                                              "line": 611,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 611,
                                              "column": 23
                                            }
                                          },
                                          "name": "points"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Literal",
                                        "start": 23959,
                                        "end": 23960,
                                        "loc": {
                                          "start": {
                                            "line": 611,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 611,
                                            "column": 25
                                          }
                                        },
                                        "value": 1,
                                        "rawValue": 1,
                                        "raw": "1"
                                      },
                                      "computed": true
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 23962,
                                      "end": 23970,
                                      "loc": {
                                        "start": {
                                          "line": 611,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 611,
                                          "column": 35
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  }
                                ]
                              }
                            ]
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 23982,
                            "end": 23986,
                            "loc": {
                              "start": {
                                "line": 612,
                                "column": 11
                              },
                              "end": {
                                "line": 612,
                                "column": 15
                              }
                            },
                            "name": "then"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 23987,
                            "end": 24000,
                            "loc": {
                              "start": {
                                "line": 612,
                                "column": 16
                              },
                              "end": {
                                "line": 612,
                                "column": 29
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 23987,
                              "end": 23994,
                              "loc": {
                                "start": {
                                  "line": 612,
                                  "column": 16
                                },
                                "end": {
                                  "line": 612,
                                  "column": 23
                                }
                              },
                              "name": "parseTo"
                            },
                            "arguments": [
                              {
                                "type": "ThisExpression",
                                "start": 23995,
                                "end": 23999,
                                "loc": {
                                  "start": {
                                    "line": 612,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 612,
                                    "column": 28
                                  }
                                }
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 24014,
              "end": 24366,
              "loc": {
                "start": {
                  "line": 615,
                  "column": 4
                },
                "end": {
                  "line": 624,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 24014,
                "end": 24035,
                "loc": {
                  "start": {
                    "line": 615,
                    "column": 4
                  },
                  "end": {
                    "line": 615,
                    "column": 25
                  }
                },
                "name": "prepareUpdateToServer"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 24035,
                "end": 24366,
                "loc": {
                  "start": {
                    "line": 615,
                    "column": 25
                  },
                  "end": {
                    "line": 624,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 24036,
                    "end": 24042,
                    "loc": {
                      "start": {
                        "line": 615,
                        "column": 26
                      },
                      "end": {
                        "line": 615,
                        "column": 32
                      }
                    },
                    "name": "sketch"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 24044,
                  "end": 24366,
                  "loc": {
                    "start": {
                      "line": 615,
                      "column": 34
                    },
                    "end": {
                      "line": 624,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 24054,
                      "end": 24360,
                      "loc": {
                        "start": {
                          "line": 616,
                          "column": 8
                        },
                        "end": {
                          "line": 623,
                          "column": 31
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 24061,
                        "end": 24359,
                        "loc": {
                          "start": {
                            "line": 616,
                            "column": 15
                          },
                          "end": {
                            "line": 623,
                            "column": 30
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 24061,
                          "end": 24344,
                          "loc": {
                            "start": {
                              "line": 616,
                              "column": 15
                            },
                            "end": {
                              "line": 623,
                              "column": 15
                            }
                          },
                          "object": {
                            "type": "CallExpression",
                            "start": 24061,
                            "end": 24339,
                            "loc": {
                              "start": {
                                "line": 616,
                                "column": 15
                              },
                              "end": {
                                "line": 623,
                                "column": 10
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 24061,
                              "end": 24081,
                              "loc": {
                                "start": {
                                  "line": 616,
                                  "column": 15
                                },
                                "end": {
                                  "line": 616,
                                  "column": 35
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 24061,
                                "end": 24070,
                                "loc": {
                                  "start": {
                                    "line": 616,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 616,
                                    "column": 24
                                  }
                                },
                                "name": "Statement"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 24071,
                                "end": 24081,
                                "loc": {
                                  "start": {
                                    "line": 616,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 616,
                                    "column": 35
                                  }
                                },
                                "name": "JSONExport"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "CallExpression",
                                "start": 24082,
                                "end": 24338,
                                "loc": {
                                  "start": {
                                    "line": 616,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 623,
                                    "column": 9
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 24082,
                                  "end": 24102,
                                  "loc": {
                                    "start": {
                                      "line": 616,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 616,
                                      "column": 56
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 24082,
                                    "end": 24092,
                                    "loc": {
                                      "start": {
                                        "line": 616,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 616,
                                        "column": 46
                                      }
                                    },
                                    "name": "Expression"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 24093,
                                    "end": 24102,
                                    "loc": {
                                      "start": {
                                        "line": 616,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 616,
                                        "column": 56
                                      }
                                    },
                                    "name": "UpdateArc"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 24116,
                                    "end": 24122,
                                    "loc": {
                                      "start": {
                                        "line": 617,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 617,
                                        "column": 18
                                      }
                                    },
                                    "name": "sketch"
                                  },
                                  {
                                    "type": "ThisExpression",
                                    "start": 24136,
                                    "end": 24140,
                                    "loc": {
                                      "start": {
                                        "line": 618,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 618,
                                        "column": 16
                                      }
                                    }
                                  },
                                  {
                                    "type": "MemberExpression",
                                    "start": 24154,
                                    "end": 24177,
                                    "loc": {
                                      "start": {
                                        "line": 619,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 619,
                                        "column": 35
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 24154,
                                      "end": 24168,
                                      "loc": {
                                        "start": {
                                          "line": 619,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 619,
                                          "column": 26
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 24154,
                                        "end": 24165,
                                        "loc": {
                                          "start": {
                                            "line": 619,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 619,
                                            "column": 23
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 24154,
                                          "end": 24158,
                                          "loc": {
                                            "start": {
                                              "line": 619,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 619,
                                              "column": 16
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 24159,
                                          "end": 24165,
                                          "loc": {
                                            "start": {
                                              "line": 619,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 619,
                                              "column": 23
                                            }
                                          },
                                          "name": "points"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Literal",
                                        "start": 24166,
                                        "end": 24167,
                                        "loc": {
                                          "start": {
                                            "line": 619,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 619,
                                            "column": 25
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      "computed": true
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 24169,
                                      "end": 24177,
                                      "loc": {
                                        "start": {
                                          "line": 619,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 619,
                                          "column": 35
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  },
                                  {
                                    "type": "MemberExpression",
                                    "start": 24191,
                                    "end": 24214,
                                    "loc": {
                                      "start": {
                                        "line": 620,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 620,
                                        "column": 35
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 24191,
                                      "end": 24205,
                                      "loc": {
                                        "start": {
                                          "line": 620,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 620,
                                          "column": 26
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 24191,
                                        "end": 24202,
                                        "loc": {
                                          "start": {
                                            "line": 620,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 620,
                                            "column": 23
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 24191,
                                          "end": 24195,
                                          "loc": {
                                            "start": {
                                              "line": 620,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 620,
                                              "column": 16
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 24196,
                                          "end": 24202,
                                          "loc": {
                                            "start": {
                                              "line": 620,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 620,
                                              "column": 23
                                            }
                                          },
                                          "name": "points"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Literal",
                                        "start": 24203,
                                        "end": 24204,
                                        "loc": {
                                          "start": {
                                            "line": 620,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 620,
                                            "column": 25
                                          }
                                        },
                                        "value": 1,
                                        "rawValue": 1,
                                        "raw": "1"
                                      },
                                      "computed": true
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 24206,
                                      "end": 24214,
                                      "loc": {
                                        "start": {
                                          "line": 620,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 620,
                                          "column": 35
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  },
                                  {
                                    "type": "MemberExpression",
                                    "start": 24228,
                                    "end": 24253,
                                    "loc": {
                                      "start": {
                                        "line": 621,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 621,
                                        "column": 37
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 24228,
                                      "end": 24244,
                                      "loc": {
                                        "start": {
                                          "line": 621,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 621,
                                          "column": 28
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 24228,
                                        "end": 24232,
                                        "loc": {
                                          "start": {
                                            "line": 621,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 621,
                                            "column": 16
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 24233,
                                        "end": 24244,
                                        "loc": {
                                          "start": {
                                            "line": 621,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 621,
                                            "column": 28
                                          }
                                        },
                                        "name": "centerPoint"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 24245,
                                      "end": 24253,
                                      "loc": {
                                        "start": {
                                          "line": 621,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 621,
                                          "column": 37
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  },
                                  {
                                    "type": "CallExpression",
                                    "start": 24267,
                                    "end": 24328,
                                    "loc": {
                                      "start": {
                                        "line": 622,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 622,
                                        "column": 73
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 24267,
                                      "end": 24301,
                                      "loc": {
                                        "start": {
                                          "line": 622,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 622,
                                          "column": 46
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 24267,
                                        "end": 24290,
                                        "loc": {
                                          "start": {
                                            "line": 622,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 622,
                                            "column": 35
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 24267,
                                          "end": 24281,
                                          "loc": {
                                            "start": {
                                              "line": 622,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 622,
                                              "column": 26
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 24267,
                                            "end": 24278,
                                            "loc": {
                                              "start": {
                                                "line": 622,
                                                "column": 12
                                              },
                                              "end": {
                                                "line": 622,
                                                "column": 23
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 24267,
                                              "end": 24271,
                                              "loc": {
                                                "start": {
                                                  "line": 622,
                                                  "column": 12
                                                },
                                                "end": {
                                                  "line": 622,
                                                  "column": 16
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 24272,
                                              "end": 24278,
                                              "loc": {
                                                "start": {
                                                  "line": 622,
                                                  "column": 17
                                                },
                                                "end": {
                                                  "line": 622,
                                                  "column": 23
                                                }
                                              },
                                              "name": "points"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Literal",
                                            "start": 24279,
                                            "end": 24280,
                                            "loc": {
                                              "start": {
                                                "line": 622,
                                                "column": 24
                                              },
                                              "end": {
                                                "line": 622,
                                                "column": 25
                                              }
                                            },
                                            "value": 0,
                                            "rawValue": 0,
                                            "raw": "0"
                                          },
                                          "computed": true
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 24282,
                                          "end": 24290,
                                          "loc": {
                                            "start": {
                                              "line": 622,
                                              "column": 27
                                            },
                                            "end": {
                                              "line": 622,
                                              "column": 35
                                            }
                                          },
                                          "name": "position"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 24291,
                                        "end": 24301,
                                        "loc": {
                                          "start": {
                                            "line": 622,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 622,
                                            "column": 46
                                          }
                                        },
                                        "name": "distanceTo"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "MemberExpression",
                                        "start": 24302,
                                        "end": 24327,
                                        "loc": {
                                          "start": {
                                            "line": 622,
                                            "column": 47
                                          },
                                          "end": {
                                            "line": 622,
                                            "column": 72
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 24302,
                                          "end": 24318,
                                          "loc": {
                                            "start": {
                                              "line": 622,
                                              "column": 47
                                            },
                                            "end": {
                                              "line": 622,
                                              "column": 63
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 24302,
                                            "end": 24306,
                                            "loc": {
                                              "start": {
                                                "line": 622,
                                                "column": 47
                                              },
                                              "end": {
                                                "line": 622,
                                                "column": 51
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 24307,
                                            "end": 24318,
                                            "loc": {
                                              "start": {
                                                "line": 622,
                                                "column": 52
                                              },
                                              "end": {
                                                "line": 622,
                                                "column": 63
                                              }
                                            },
                                            "name": "centerPoint"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 24319,
                                          "end": 24327,
                                          "loc": {
                                            "start": {
                                              "line": 622,
                                              "column": 64
                                            },
                                            "end": {
                                              "line": 622,
                                              "column": 72
                                            }
                                          },
                                          "name": "position"
                                        },
                                        "computed": false
                                      }
                                    ]
                                  }
                                ]
                              }
                            ]
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 24340,
                            "end": 24344,
                            "loc": {
                              "start": {
                                "line": 623,
                                "column": 11
                              },
                              "end": {
                                "line": 623,
                                "column": 15
                              }
                            },
                            "name": "then"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 24345,
                            "end": 24358,
                            "loc": {
                              "start": {
                                "line": 623,
                                "column": 16
                              },
                              "end": {
                                "line": 623,
                                "column": 29
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 24345,
                              "end": 24352,
                              "loc": {
                                "start": {
                                  "line": 623,
                                  "column": 16
                                },
                                "end": {
                                  "line": 623,
                                  "column": 23
                                }
                              },
                              "name": "parseTo"
                            },
                            "arguments": [
                              {
                                "type": "ThisExpression",
                                "start": 24353,
                                "end": 24357,
                                "loc": {
                                  "start": {
                                    "line": 623,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 623,
                                    "column": 28
                                  }
                                }
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 24372,
              "end": 24478,
              "loc": {
                "start": {
                  "line": 626,
                  "column": 4
                },
                "end": {
                  "line": 628,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 24372,
                "end": 24393,
                "loc": {
                  "start": {
                    "line": 626,
                    "column": 4
                  },
                  "end": {
                    "line": 626,
                    "column": 25
                  }
                },
                "name": "prepareRemoveOnServer"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 24393,
                "end": 24478,
                "loc": {
                  "start": {
                    "line": 626,
                    "column": 25
                  },
                  "end": {
                    "line": 628,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 24394,
                    "end": 24400,
                    "loc": {
                      "start": {
                        "line": 626,
                        "column": 26
                      },
                      "end": {
                        "line": 626,
                        "column": 32
                      }
                    },
                    "name": "sketch"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 24402,
                  "end": 24478,
                  "loc": {
                    "start": {
                      "line": 626,
                      "column": 34
                    },
                    "end": {
                      "line": 628,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 24412,
                      "end": 24472,
                      "loc": {
                        "start": {
                          "line": 627,
                          "column": 8
                        },
                        "end": {
                          "line": 627,
                          "column": 68
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 24419,
                        "end": 24471,
                        "loc": {
                          "start": {
                            "line": 627,
                            "column": 15
                          },
                          "end": {
                            "line": 627,
                            "column": 67
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 24419,
                          "end": 24435,
                          "loc": {
                            "start": {
                              "line": 627,
                              "column": 15
                            },
                            "end": {
                              "line": 627,
                              "column": 31
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 24419,
                            "end": 24428,
                            "loc": {
                              "start": {
                                "line": 627,
                                "column": 15
                              },
                              "end": {
                                "line": 627,
                                "column": 24
                              }
                            },
                            "name": "Statement"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 24429,
                            "end": 24435,
                            "loc": {
                              "start": {
                                "line": 627,
                                "column": 25
                              },
                              "end": {
                                "line": 627,
                                "column": 31
                              }
                            },
                            "name": "Return"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 24436,
                            "end": 24470,
                            "loc": {
                              "start": {
                                "line": 627,
                                "column": 32
                              },
                              "end": {
                                "line": 627,
                                "column": 66
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 24436,
                              "end": 24456,
                              "loc": {
                                "start": {
                                  "line": 627,
                                  "column": 32
                                },
                                "end": {
                                  "line": 627,
                                  "column": 52
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 24436,
                                "end": 24446,
                                "loc": {
                                  "start": {
                                    "line": 627,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 627,
                                    "column": 42
                                  }
                                },
                                "name": "Expression"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 24447,
                                "end": 24456,
                                "loc": {
                                  "start": {
                                    "line": 627,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 627,
                                    "column": 52
                                  }
                                },
                                "name": "RemoveArc"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 24457,
                                "end": 24463,
                                "loc": {
                                  "start": {
                                    "line": 627,
                                    "column": 53
                                  },
                                  "end": {
                                    "line": 627,
                                    "column": 59
                                  }
                                },
                                "name": "sketch"
                              },
                              {
                                "type": "ThisExpression",
                                "start": 24465,
                                "end": 24469,
                                "loc": {
                                  "start": {
                                    "line": 627,
                                    "column": 61
                                  },
                                  "end": {
                                    "line": 627,
                                    "column": 65
                                  }
                                }
                              }
                            ]
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 24484,
              "end": 24700,
              "loc": {
                "start": {
                  "line": 630,
                  "column": 4
                },
                "end": {
                  "line": 635,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 24484,
                "end": 24493,
                "loc": {
                  "start": {
                    "line": 630,
                    "column": 4
                  },
                  "end": {
                    "line": 630,
                    "column": 13
                  }
                },
                "name": "addMember"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 24493,
                "end": 24700,
                "loc": {
                  "start": {
                    "line": 630,
                    "column": 13
                  },
                  "end": {
                    "line": 635,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 24494,
                    "end": 24500,
                    "loc": {
                      "start": {
                        "line": 630,
                        "column": 14
                      },
                      "end": {
                        "line": 630,
                        "column": 20
                      }
                    },
                    "name": "member"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 24502,
                  "end": 24700,
                  "loc": {
                    "start": {
                      "line": 630,
                      "column": 22
                    },
                    "end": {
                      "line": 635,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 24512,
                      "end": 24571,
                      "loc": {
                        "start": {
                          "line": 631,
                          "column": 8
                        },
                        "end": {
                          "line": 631,
                          "column": 67
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 24512,
                        "end": 24570,
                        "loc": {
                          "start": {
                            "line": 631,
                            "column": 8
                          },
                          "end": {
                            "line": 631,
                            "column": 66
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 24512,
                          "end": 24553,
                          "loc": {
                            "start": {
                              "line": 631,
                              "column": 8
                            },
                            "end": {
                              "line": 631,
                              "column": 49
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 24512,
                            "end": 24547,
                            "loc": {
                              "start": {
                                "line": 631,
                                "column": 8
                              },
                              "end": {
                                "line": 631,
                                "column": 43
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 24512,
                              "end": 24537,
                              "loc": {
                                "start": {
                                  "line": 631,
                                  "column": 8
                                },
                                "end": {
                                  "line": 631,
                                  "column": 33
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 24512,
                                "end": 24527,
                                "loc": {
                                  "start": {
                                    "line": 631,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 631,
                                    "column": 23
                                  }
                                },
                                "name": "GeometricObject"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 24528,
                                "end": 24537,
                                "loc": {
                                  "start": {
                                    "line": 631,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 631,
                                    "column": 33
                                  }
                                },
                                "name": "prototype"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 24538,
                              "end": 24547,
                              "loc": {
                                "start": {
                                  "line": 631,
                                  "column": 34
                                },
                                "end": {
                                  "line": 631,
                                  "column": 43
                                }
                              },
                              "name": "addMember"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 24548,
                            "end": 24553,
                            "loc": {
                              "start": {
                                "line": 631,
                                "column": 44
                              },
                              "end": {
                                "line": 631,
                                "column": 49
                              }
                            },
                            "name": "apply"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ThisExpression",
                            "start": 24554,
                            "end": 24558,
                            "loc": {
                              "start": {
                                "line": 631,
                                "column": 50
                              },
                              "end": {
                                "line": 631,
                                "column": 54
                              }
                            }
                          },
                          {
                            "type": "Identifier",
                            "start": 24560,
                            "end": 24569,
                            "loc": {
                              "start": {
                                "line": 631,
                                "column": 56
                              },
                              "end": {
                                "line": 631,
                                "column": 65
                              }
                            },
                            "name": "arguments"
                          }
                        ]
                      }
                    },
                    {
                      "type": "SwitchStatement",
                      "start": 24580,
                      "end": 24694,
                      "loc": {
                        "start": {
                          "line": 632,
                          "column": 8
                        },
                        "end": {
                          "line": 634,
                          "column": 9
                        }
                      },
                      "discriminant": {
                        "type": "MemberExpression",
                        "start": 24588,
                        "end": 24619,
                        "loc": {
                          "start": {
                            "line": 632,
                            "column": 16
                          },
                          "end": {
                            "line": 632,
                            "column": 47
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 24588,
                          "end": 24614,
                          "loc": {
                            "start": {
                              "line": 632,
                              "column": 16
                            },
                            "end": {
                              "line": 632,
                              "column": 42
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 24588,
                            "end": 24603,
                            "loc": {
                              "start": {
                                "line": 632,
                                "column": 16
                              },
                              "end": {
                                "line": 632,
                                "column": 31
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 24588,
                              "end": 24594,
                              "loc": {
                                "start": {
                                  "line": 632,
                                  "column": 16
                                },
                                "end": {
                                  "line": 632,
                                  "column": 22
                                }
                              },
                              "name": "member"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 24595,
                              "end": 24603,
                              "loc": {
                                "start": {
                                  "line": 632,
                                  "column": 23
                                },
                                "end": {
                                  "line": 632,
                                  "column": 31
                                }
                              },
                              "name": "userData"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 24604,
                            "end": 24614,
                            "loc": {
                              "start": {
                                "line": 632,
                                "column": 32
                              },
                              "end": {
                                "line": 632,
                                "column": 42
                              }
                            },
                            "name": "memberInfo"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 24615,
                          "end": 24619,
                          "loc": {
                            "start": {
                              "line": 632,
                              "column": 43
                            },
                            "end": {
                              "line": 632,
                              "column": 47
                            }
                          },
                          "name": "name"
                        },
                        "computed": false
                      },
                      "cases": [
                        {
                          "type": "SwitchCase",
                          "start": 24635,
                          "end": 24684,
                          "loc": {
                            "start": {
                              "line": 633,
                              "column": 12
                            },
                            "end": {
                              "line": 633,
                              "column": 61
                            }
                          },
                          "consequent": [
                            {
                              "type": "ExpressionStatement",
                              "start": 24649,
                              "end": 24677,
                              "loc": {
                                "start": {
                                  "line": 633,
                                  "column": 26
                                },
                                "end": {
                                  "line": 633,
                                  "column": 54
                                }
                              },
                              "expression": {
                                "type": "AssignmentExpression",
                                "start": 24649,
                                "end": 24676,
                                "loc": {
                                  "start": {
                                    "line": 633,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 633,
                                    "column": 53
                                  }
                                },
                                "operator": "=",
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 24649,
                                  "end": 24663,
                                  "loc": {
                                    "start": {
                                      "line": 633,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 633,
                                      "column": 40
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 24649,
                                    "end": 24653,
                                    "loc": {
                                      "start": {
                                        "line": 633,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 633,
                                        "column": 30
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 24654,
                                    "end": 24663,
                                    "loc": {
                                      "start": {
                                        "line": 633,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 633,
                                        "column": 40
                                      }
                                    },
                                    "name": "clockwise"
                                  },
                                  "computed": false
                                },
                                "right": {
                                  "type": "BinaryExpression",
                                  "start": 24666,
                                  "end": 24676,
                                  "loc": {
                                    "start": {
                                      "line": 633,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 633,
                                      "column": 53
                                    }
                                  },
                                  "left": {
                                    "type": "Identifier",
                                    "start": 24666,
                                    "end": 24672,
                                    "loc": {
                                      "start": {
                                        "line": 633,
                                        "column": 43
                                      },
                                      "end": {
                                        "line": 633,
                                        "column": 49
                                      }
                                    },
                                    "name": "member"
                                  },
                                  "operator": "<",
                                  "right": {
                                    "type": "Literal",
                                    "start": 24675,
                                    "end": 24676,
                                    "loc": {
                                      "start": {
                                        "line": 633,
                                        "column": 52
                                      },
                                      "end": {
                                        "line": 633,
                                        "column": 53
                                      }
                                    },
                                    "value": 0,
                                    "rawValue": 0,
                                    "raw": "0"
                                  }
                                }
                              }
                            },
                            {
                              "type": "BreakStatement",
                              "start": 24678,
                              "end": 24684,
                              "loc": {
                                "start": {
                                  "line": 633,
                                  "column": 55
                                },
                                "end": {
                                  "line": 633,
                                  "column": 61
                                }
                              },
                              "label": null
                            }
                          ],
                          "test": {
                            "type": "Literal",
                            "start": 24640,
                            "end": 24647,
                            "loc": {
                              "start": {
                                "line": 633,
                                "column": 17
                              },
                              "end": {
                                "line": 633,
                                "column": 24
                              }
                            },
                            "value": "bulge",
                            "rawValue": "bulge",
                            "raw": "'bulge'"
                          }
                        }
                      ]
                    }
                  ]
                }
              }
            }
          ]
        },
        "leadingComments": [
          {
            "type": "CommentLine",
            "value": "================================ Sketch.Arc =========================================",
            "start": 13692,
            "end": 13779,
            "loc": {
              "start": {
                "line": 369,
                "column": 0
              },
              "end": {
                "line": 369,
                "column": 87
              }
            },
            "range": [
              13692,
              13779
            ]
          }
        ],
        "trailingComments": []
      },
      "specifiers": [],
      "source": null,
      "leadingComments": [
        {
          "type": "CommentLine",
          "value": "================================ Sketch.Arc =========================================",
          "start": 13692,
          "end": 13779,
          "loc": {
            "start": {
              "line": 369,
              "column": 0
            },
            "end": {
              "line": 369,
              "column": 87
            }
          },
          "range": [
            13692,
            13779
          ]
        }
      ]
    },
    {
      "type": "ExpressionStatement",
      "start": 24703,
      "end": 24747,
      "loc": {
        "start": {
          "line": 637,
          "column": 0
        },
        "end": {
          "line": 637,
          "column": 44
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 24703,
        "end": 24746,
        "loc": {
          "start": {
            "line": 637,
            "column": 0
          },
          "end": {
            "line": 637,
            "column": 43
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 24703,
          "end": 24740,
          "loc": {
            "start": {
              "line": 637,
              "column": 0
            },
            "end": {
              "line": 637,
              "column": 37
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 24703,
            "end": 24730,
            "loc": {
              "start": {
                "line": 637,
                "column": 0
              },
              "end": {
                "line": 637,
                "column": 27
              }
            },
            "object": {
              "type": "Identifier",
              "start": 24703,
              "end": 24717,
              "loc": {
                "start": {
                  "line": 637,
                  "column": 0
                },
                "end": {
                  "line": 637,
                  "column": 14
                }
              },
              "name": "ClassCadObject"
            },
            "property": {
              "type": "Identifier",
              "start": 24718,
              "end": 24730,
              "loc": {
                "start": {
                  "line": 637,
                  "column": 15
                },
                "end": {
                  "line": 637,
                  "column": 27
                }
              },
              "name": "classMapping"
            },
            "computed": false
          },
          "property": {
            "type": "Literal",
            "start": 24731,
            "end": 24739,
            "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": 24743,
          "end": 24746,
          "loc": {
            "start": {
              "line": 637,
              "column": 40
            },
            "end": {
              "line": 637,
              "column": 43
            }
          },
          "name": "Arc"
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 24748,
      "end": 24783,
      "loc": {
        "start": {
          "line": 638,
          "column": 0
        },
        "end": {
          "line": 638,
          "column": 35
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 24748,
        "end": 24782,
        "loc": {
          "start": {
            "line": 638,
            "column": 0
          },
          "end": {
            "line": 638,
            "column": 34
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 24748,
          "end": 24776,
          "loc": {
            "start": {
              "line": 638,
              "column": 0
            },
            "end": {
              "line": 638,
              "column": 28
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 24748,
            "end": 24761,
            "loc": {
              "start": {
                "line": 638,
                "column": 0
              },
              "end": {
                "line": 638,
                "column": 13
              }
            },
            "object": {
              "type": "Identifier",
              "start": 24748,
              "end": 24751,
              "loc": {
                "start": {
                  "line": 638,
                  "column": 0
                },
                "end": {
                  "line": 638,
                  "column": 3
                }
              },
              "name": "Arc"
            },
            "property": {
              "type": "Identifier",
              "start": 24752,
              "end": 24761,
              "loc": {
                "start": {
                  "line": 638,
                  "column": 4
                },
                "end": {
                  "line": 638,
                  "column": 13
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 24762,
            "end": 24776,
            "loc": {
              "start": {
                "line": 638,
                "column": 14
              },
              "end": {
                "line": 638,
                "column": 28
              }
            },
            "name": "meshResolution"
          },
          "computed": false
        },
        "right": {
          "type": "Literal",
          "start": 24779,
          "end": 24782,
          "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": 24785,
          "end": 24827,
          "loc": {
            "start": {
              "line": 638,
              "column": 37
            },
            "end": {
              "line": 638,
              "column": 79
            }
          },
          "range": [
            24785,
            24827
          ]
        },
        {
          "type": "CommentLine",
          "value": "==============================     WorkPlane    ==============================",
          "start": 24829,
          "end": 24909,
          "loc": {
            "start": {
              "line": 640,
              "column": 0
            },
            "end": {
              "line": 640,
              "column": 80
            }
          },
          "range": [
            24829,
            24909
          ]
        }
      ]
    },
    {
      "type": "ExportNamedDeclaration",
      "start": 24910,
      "end": 25885,
      "loc": {
        "start": {
          "line": 641,
          "column": 0
        },
        "end": {
          "line": 667,
          "column": 1
        }
      },
      "declaration": {
        "type": "ClassDeclaration",
        "start": 24917,
        "end": 25885,
        "loc": {
          "start": {
            "line": 641,
            "column": 7
          },
          "end": {
            "line": 667,
            "column": 1
          }
        },
        "id": {
          "type": "Identifier",
          "start": 24923,
          "end": 24932,
          "loc": {
            "start": {
              "line": 641,
              "column": 13
            },
            "end": {
              "line": 641,
              "column": 22
            }
          },
          "name": "WorkPlane",
          "leadingComments": null
        },
        "superClass": {
          "type": "Identifier",
          "start": 24941,
          "end": 24955,
          "loc": {
            "start": {
              "line": 641,
              "column": 31
            },
            "end": {
              "line": 641,
              "column": 45
            }
          },
          "name": "ClassCadObject"
        },
        "body": {
          "type": "ClassBody",
          "start": 24956,
          "end": 25885,
          "loc": {
            "start": {
              "line": 641,
              "column": 46
            },
            "end": {
              "line": 667,
              "column": 1
            }
          },
          "body": [
            {
              "type": "MethodDefinition",
              "start": 24962,
              "end": 25392,
              "loc": {
                "start": {
                  "line": 642,
                  "column": 4
                },
                "end": {
                  "line": 652,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 24962,
                "end": 24973,
                "loc": {
                  "start": {
                    "line": 642,
                    "column": 4
                  },
                  "end": {
                    "line": 642,
                    "column": 15
                  }
                },
                "name": "constructor"
              },
              "static": false,
              "kind": "constructor",
              "value": {
                "type": "FunctionExpression",
                "start": 24973,
                "end": 25392,
                "loc": {
                  "start": {
                    "line": 642,
                    "column": 15
                  },
                  "end": {
                    "line": 652,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 24976,
                  "end": 25392,
                  "loc": {
                    "start": {
                      "line": 642,
                      "column": 18
                    },
                    "end": {
                      "line": 652,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 24986,
                      "end": 24994,
                      "loc": {
                        "start": {
                          "line": 643,
                          "column": 8
                        },
                        "end": {
                          "line": 643,
                          "column": 16
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 24986,
                        "end": 24993,
                        "loc": {
                          "start": {
                            "line": 643,
                            "column": 8
                          },
                          "end": {
                            "line": 643,
                            "column": 15
                          }
                        },
                        "callee": {
                          "type": "Super",
                          "start": 24986,
                          "end": 24991,
                          "loc": {
                            "start": {
                              "line": 643,
                              "column": 8
                            },
                            "end": {
                              "line": 643,
                              "column": 13
                            }
                          }
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 25003,
                      "end": 25322,
                      "loc": {
                        "start": {
                          "line": 644,
                          "column": 8
                        },
                        "end": {
                          "line": 649,
                          "column": 11
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 25003,
                        "end": 25321,
                        "loc": {
                          "start": {
                            "line": 644,
                            "column": 8
                          },
                          "end": {
                            "line": 649,
                            "column": 10
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 25003,
                          "end": 25012,
                          "loc": {
                            "start": {
                              "line": 644,
                              "column": 8
                            },
                            "end": {
                              "line": 644,
                              "column": 17
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 25003,
                            "end": 25007,
                            "loc": {
                              "start": {
                                "line": 644,
                                "column": 8
                              },
                              "end": {
                                "line": 644,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 25008,
                            "end": 25012,
                            "loc": {
                              "start": {
                                "line": 644,
                                "column": 13
                              },
                              "end": {
                                "line": 644,
                                "column": 17
                              }
                            },
                            "name": "mesh"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 25015,
                          "end": 25321,
                          "loc": {
                            "start": {
                              "line": 644,
                              "column": 20
                            },
                            "end": {
                              "line": 649,
                              "column": 10
                            }
                          },
                          "callee": {
                            "type": "Identifier",
                            "start": 25019,
                            "end": 25031,
                            "loc": {
                              "start": {
                                "line": 644,
                                "column": 24
                              },
                              "end": {
                                "line": 644,
                                "column": 36
                              }
                            },
                            "name": "InteractMesh"
                          },
                          "arguments": [
                            {
                              "type": "NewExpression",
                              "start": 25032,
                              "end": 25062,
                              "loc": {
                                "start": {
                                  "line": 644,
                                  "column": 37
                                },
                                "end": {
                                  "line": 644,
                                  "column": 67
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 25036,
                                "end": 25053,
                                "loc": {
                                  "start": {
                                    "line": 644,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 644,
                                    "column": 58
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 25036,
                                  "end": 25041,
                                  "loc": {
                                    "start": {
                                      "line": 644,
                                      "column": 41
                                    },
                                    "end": {
                                      "line": 644,
                                      "column": 46
                                    }
                                  },
                                  "name": "THREE"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 25042,
                                  "end": 25053,
                                  "loc": {
                                    "start": {
                                      "line": 644,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 644,
                                      "column": 58
                                    }
                                  },
                                  "name": "BoxGeometry"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Literal",
                                  "start": 25054,
                                  "end": 25055,
                                  "loc": {
                                    "start": {
                                      "line": 644,
                                      "column": 59
                                    },
                                    "end": {
                                      "line": 644,
                                      "column": 60
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                },
                                {
                                  "type": "Literal",
                                  "start": 25057,
                                  "end": 25058,
                                  "loc": {
                                    "start": {
                                      "line": 644,
                                      "column": 62
                                    },
                                    "end": {
                                      "line": 644,
                                      "column": 63
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                },
                                {
                                  "type": "Literal",
                                  "start": 25060,
                                  "end": 25061,
                                  "loc": {
                                    "start": {
                                      "line": 644,
                                      "column": 65
                                    },
                                    "end": {
                                      "line": 644,
                                      "column": 66
                                    }
                                  },
                                  "value": 0,
                                  "rawValue": 0,
                                  "raw": "0"
                                }
                              ]
                            },
                            {
                              "type": "NewExpression",
                              "start": 25064,
                              "end": 25320,
                              "loc": {
                                "start": {
                                  "line": 644,
                                  "column": 69
                                },
                                "end": {
                                  "line": 649,
                                  "column": 9
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 25068,
                                "end": 25091,
                                "loc": {
                                  "start": {
                                    "line": 644,
                                    "column": 73
                                  },
                                  "end": {
                                    "line": 644,
                                    "column": 96
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 25068,
                                  "end": 25073,
                                  "loc": {
                                    "start": {
                                      "line": 644,
                                      "column": 73
                                    },
                                    "end": {
                                      "line": 644,
                                      "column": 78
                                    }
                                  },
                                  "name": "THREE"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 25074,
                                  "end": 25091,
                                  "loc": {
                                    "start": {
                                      "line": 644,
                                      "column": 79
                                    },
                                    "end": {
                                      "line": 644,
                                      "column": 96
                                    }
                                  },
                                  "name": "MeshBasicMaterial"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ObjectExpression",
                                  "start": 25105,
                                  "end": 25310,
                                  "loc": {
                                    "start": {
                                      "line": 645,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 648,
                                      "column": 13
                                    }
                                  },
                                  "properties": [
                                    {
                                      "type": "Property",
                                      "start": 25106,
                                      "end": 25134,
                                      "loc": {
                                        "start": {
                                          "line": 645,
                                          "column": 13
                                        },
                                        "end": {
                                          "line": 645,
                                          "column": 41
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 25106,
                                        "end": 25111,
                                        "loc": {
                                          "start": {
                                            "line": 645,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 645,
                                            "column": 18
                                          }
                                        },
                                        "name": "color"
                                      },
                                      "value": {
                                        "type": "CallExpression",
                                        "start": 25113,
                                        "end": 25134,
                                        "loc": {
                                          "start": {
                                            "line": 645,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 645,
                                            "column": 41
                                          }
                                        },
                                        "callee": {
                                          "type": "Identifier",
                                          "start": 25113,
                                          "end": 25121,
                                          "loc": {
                                            "start": {
                                              "line": 645,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 645,
                                              "column": 28
                                            }
                                          },
                                          "name": "getColor"
                                        },
                                        "arguments": [
                                          {
                                            "type": "ThisExpression",
                                            "start": 25122,
                                            "end": 25126,
                                            "loc": {
                                              "start": {
                                                "line": 645,
                                                "column": 29
                                              },
                                              "end": {
                                                "line": 645,
                                                "column": 33
                                              }
                                            }
                                          },
                                          {
                                            "type": "Literal",
                                            "start": 25128,
                                            "end": 25133,
                                            "loc": {
                                              "start": {
                                                "line": 645,
                                                "column": 35
                                              },
                                              "end": {
                                                "line": 645,
                                                "column": 40
                                              }
                                            },
                                            "value": false,
                                            "rawValue": false,
                                            "raw": "false"
                                          }
                                        ]
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 25136,
                                      "end": 25158,
                                      "loc": {
                                        "start": {
                                          "line": 645,
                                          "column": 43
                                        },
                                        "end": {
                                          "line": 645,
                                          "column": 65
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 25136,
                                        "end": 25140,
                                        "loc": {
                                          "start": {
                                            "line": 645,
                                            "column": 43
                                          },
                                          "end": {
                                            "line": 645,
                                            "column": 47
                                          }
                                        },
                                        "name": "side"
                                      },
                                      "value": {
                                        "type": "MemberExpression",
                                        "start": 25142,
                                        "end": 25158,
                                        "loc": {
                                          "start": {
                                            "line": 645,
                                            "column": 49
                                          },
                                          "end": {
                                            "line": 645,
                                            "column": 65
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 25142,
                                          "end": 25147,
                                          "loc": {
                                            "start": {
                                              "line": 645,
                                              "column": 49
                                            },
                                            "end": {
                                              "line": 645,
                                              "column": 54
                                            }
                                          },
                                          "name": "THREE"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 25148,
                                          "end": 25158,
                                          "loc": {
                                            "start": {
                                              "line": 645,
                                              "column": 55
                                            },
                                            "end": {
                                              "line": 645,
                                              "column": 65
                                            }
                                          },
                                          "name": "DoubleSide"
                                        },
                                        "computed": false
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 25176,
                                      "end": 25195,
                                      "loc": {
                                        "start": {
                                          "line": 646,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 646,
                                          "column": 35
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 25176,
                                        "end": 25189,
                                        "loc": {
                                          "start": {
                                            "line": 646,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 646,
                                            "column": 29
                                          }
                                        },
                                        "name": "polygonOffset"
                                      },
                                      "value": {
                                        "type": "Literal",
                                        "start": 25191,
                                        "end": 25195,
                                        "loc": {
                                          "start": {
                                            "line": 646,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 646,
                                            "column": 35
                                          }
                                        },
                                        "value": true,
                                        "rawValue": true,
                                        "raw": "true"
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 25197,
                                      "end": 25220,
                                      "loc": {
                                        "start": {
                                          "line": 646,
                                          "column": 37
                                        },
                                        "end": {
                                          "line": 646,
                                          "column": 60
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 25197,
                                        "end": 25216,
                                        "loc": {
                                          "start": {
                                            "line": 646,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 646,
                                            "column": 56
                                          }
                                        },
                                        "name": "polygonOffsetFactor"
                                      },
                                      "value": {
                                        "type": "UnaryExpression",
                                        "start": 25218,
                                        "end": 25220,
                                        "loc": {
                                          "start": {
                                            "line": 646,
                                            "column": 58
                                          },
                                          "end": {
                                            "line": 646,
                                            "column": 60
                                          }
                                        },
                                        "operator": "-",
                                        "prefix": true,
                                        "argument": {
                                          "type": "Literal",
                                          "start": 25219,
                                          "end": 25220,
                                          "loc": {
                                            "start": {
                                              "line": 646,
                                              "column": 59
                                            },
                                            "end": {
                                              "line": 646,
                                              "column": 60
                                            }
                                          },
                                          "value": 1,
                                          "rawValue": 1,
                                          "raw": "1"
                                        }
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 25222,
                                      "end": 25245,
                                      "loc": {
                                        "start": {
                                          "line": 646,
                                          "column": 62
                                        },
                                        "end": {
                                          "line": 646,
                                          "column": 85
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 25222,
                                        "end": 25240,
                                        "loc": {
                                          "start": {
                                            "line": 646,
                                            "column": 62
                                          },
                                          "end": {
                                            "line": 646,
                                            "column": 80
                                          }
                                        },
                                        "name": "polygonOffsetUnits"
                                      },
                                      "value": {
                                        "type": "UnaryExpression",
                                        "start": 25243,
                                        "end": 25245,
                                        "loc": {
                                          "start": {
                                            "line": 646,
                                            "column": 83
                                          },
                                          "end": {
                                            "line": 646,
                                            "column": 85
                                          }
                                        },
                                        "operator": "-",
                                        "prefix": true,
                                        "argument": {
                                          "type": "Literal",
                                          "start": 25244,
                                          "end": 25245,
                                          "loc": {
                                            "start": {
                                              "line": 646,
                                              "column": 84
                                            },
                                            "end": {
                                              "line": 646,
                                              "column": 85
                                            }
                                          },
                                          "value": 5,
                                          "rawValue": 5,
                                          "raw": "5"
                                        }
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 25263,
                                      "end": 25280,
                                      "loc": {
                                        "start": {
                                          "line": 647,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 647,
                                          "column": 33
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 25263,
                                        "end": 25274,
                                        "loc": {
                                          "start": {
                                            "line": 647,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 647,
                                            "column": 27
                                          }
                                        },
                                        "name": "transparent"
                                      },
                                      "value": {
                                        "type": "Literal",
                                        "start": 25276,
                                        "end": 25280,
                                        "loc": {
                                          "start": {
                                            "line": 647,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 647,
                                            "column": 33
                                          }
                                        },
                                        "value": true,
                                        "rawValue": true,
                                        "raw": "true"
                                      },
                                      "kind": "init"
                                    },
                                    {
                                      "type": "Property",
                                      "start": 25282,
                                      "end": 25295,
                                      "loc": {
                                        "start": {
                                          "line": 647,
                                          "column": 35
                                        },
                                        "end": {
                                          "line": 647,
                                          "column": 48
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 25282,
                                        "end": 25289,
                                        "loc": {
                                          "start": {
                                            "line": 647,
                                            "column": 35
                                          },
                                          "end": {
                                            "line": 647,
                                            "column": 42
                                          }
                                        },
                                        "name": "opacity"
                                      },
                                      "value": {
                                        "type": "Literal",
                                        "start": 25291,
                                        "end": 25295,
                                        "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": 25331,
                      "end": 25357,
                      "loc": {
                        "start": {
                          "line": 650,
                          "column": 8
                        },
                        "end": {
                          "line": 650,
                          "column": 34
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 25331,
                        "end": 25356,
                        "loc": {
                          "start": {
                            "line": 650,
                            "column": 8
                          },
                          "end": {
                            "line": 650,
                            "column": 33
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 25331,
                          "end": 25344,
                          "loc": {
                            "start": {
                              "line": 650,
                              "column": 8
                            },
                            "end": {
                              "line": 650,
                              "column": 21
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 25331,
                            "end": 25335,
                            "loc": {
                              "start": {
                                "line": 650,
                                "column": 8
                              },
                              "end": {
                                "line": 650,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 25336,
                            "end": 25344,
                            "loc": {
                              "start": {
                                "line": 650,
                                "column": 13
                              },
                              "end": {
                                "line": 650,
                                "column": 21
                              }
                            },
                            "name": "interact"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 25347,
                          "end": 25356,
                          "loc": {
                            "start": {
                              "line": 650,
                              "column": 24
                            },
                            "end": {
                              "line": 650,
                              "column": 33
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 25347,
                            "end": 25351,
                            "loc": {
                              "start": {
                                "line": 650,
                                "column": 24
                              },
                              "end": {
                                "line": 650,
                                "column": 28
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 25352,
                            "end": 25356,
                            "loc": {
                              "start": {
                                "line": 650,
                                "column": 29
                              },
                              "end": {
                                "line": 650,
                                "column": 33
                              }
                            },
                            "name": "mesh"
                          },
                          "computed": false
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 25366,
                      "end": 25386,
                      "loc": {
                        "start": {
                          "line": 651,
                          "column": 8
                        },
                        "end": {
                          "line": 651,
                          "column": 28
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 25366,
                        "end": 25385,
                        "loc": {
                          "start": {
                            "line": 651,
                            "column": 8
                          },
                          "end": {
                            "line": 651,
                            "column": 27
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 25366,
                          "end": 25374,
                          "loc": {
                            "start": {
                              "line": 651,
                              "column": 8
                            },
                            "end": {
                              "line": 651,
                              "column": 16
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 25366,
                            "end": 25370,
                            "loc": {
                              "start": {
                                "line": 651,
                                "column": 8
                              },
                              "end": {
                                "line": 651,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 25371,
                            "end": 25374,
                            "loc": {
                              "start": {
                                "line": 651,
                                "column": 13
                              },
                              "end": {
                                "line": 651,
                                "column": 16
                              }
                            },
                            "name": "add"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 25375,
                            "end": 25384,
                            "loc": {
                              "start": {
                                "line": 651,
                                "column": 17
                              },
                              "end": {
                                "line": 651,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 25375,
                              "end": 25379,
                              "loc": {
                                "start": {
                                  "line": 651,
                                  "column": 17
                                },
                                "end": {
                                  "line": 651,
                                  "column": 21
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 25380,
                              "end": 25384,
                              "loc": {
                                "start": {
                                  "line": 651,
                                  "column": 22
                                },
                                "end": {
                                  "line": 651,
                                  "column": 26
                                }
                              },
                              "name": "mesh"
                            },
                            "computed": false
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 25398,
              "end": 25803,
              "loc": {
                "start": {
                  "line": 654,
                  "column": 4
                },
                "end": {
                  "line": 662,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 25398,
                "end": 25407,
                "loc": {
                  "start": {
                    "line": 654,
                    "column": 4
                  },
                  "end": {
                    "line": 654,
                    "column": 13
                  }
                },
                "name": "addMember"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 25407,
                "end": 25803,
                "loc": {
                  "start": {
                    "line": 654,
                    "column": 13
                  },
                  "end": {
                    "line": 662,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 25408,
                    "end": 25414,
                    "loc": {
                      "start": {
                        "line": 654,
                        "column": 14
                      },
                      "end": {
                        "line": 654,
                        "column": 20
                      }
                    },
                    "name": "member"
                  },
                  {
                    "type": "Identifier",
                    "start": 25416,
                    "end": 25420,
                    "loc": {
                      "start": {
                        "line": 654,
                        "column": 22
                      },
                      "end": {
                        "line": 654,
                        "column": 26
                      }
                    },
                    "name": "mark"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 25422,
                  "end": 25803,
                  "loc": {
                    "start": {
                      "line": 654,
                      "column": 28
                    },
                    "end": {
                      "line": 662,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 25432,
                      "end": 25462,
                      "loc": {
                        "start": {
                          "line": 655,
                          "column": 8
                        },
                        "end": {
                          "line": 655,
                          "column": 38
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 25432,
                        "end": 25461,
                        "loc": {
                          "start": {
                            "line": 655,
                            "column": 8
                          },
                          "end": {
                            "line": 655,
                            "column": 37
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 25432,
                          "end": 25447,
                          "loc": {
                            "start": {
                              "line": 655,
                              "column": 8
                            },
                            "end": {
                              "line": 655,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "Super",
                            "start": 25432,
                            "end": 25437,
                            "loc": {
                              "start": {
                                "line": 655,
                                "column": 8
                              },
                              "end": {
                                "line": 655,
                                "column": 13
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 25438,
                            "end": 25447,
                            "loc": {
                              "start": {
                                "line": 655,
                                "column": 14
                              },
                              "end": {
                                "line": 655,
                                "column": 23
                              }
                            },
                            "name": "addMember"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 25448,
                            "end": 25454,
                            "loc": {
                              "start": {
                                "line": 655,
                                "column": 24
                              },
                              "end": {
                                "line": 655,
                                "column": 30
                              }
                            },
                            "name": "member"
                          },
                          {
                            "type": "Identifier",
                            "start": 25456,
                            "end": 25460,
                            "loc": {
                              "start": {
                                "line": 655,
                                "column": 32
                              },
                              "end": {
                                "line": 655,
                                "column": 36
                              }
                            },
                            "name": "mark"
                          }
                        ]
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 25471,
                      "end": 25507,
                      "loc": {
                        "start": {
                          "line": 656,
                          "column": 8
                        },
                        "end": {
                          "line": 656,
                          "column": 44
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 25475,
                          "end": 25506,
                          "loc": {
                            "start": {
                              "line": 656,
                              "column": 12
                            },
                            "end": {
                              "line": 656,
                              "column": 43
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 25475,
                            "end": 25477,
                            "loc": {
                              "start": {
                                "line": 656,
                                "column": 12
                              },
                              "end": {
                                "line": 656,
                                "column": 14
                              }
                            },
                            "name": "mi"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 25480,
                            "end": 25506,
                            "loc": {
                              "start": {
                                "line": 656,
                                "column": 17
                              },
                              "end": {
                                "line": 656,
                                "column": 43
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 25480,
                              "end": 25495,
                              "loc": {
                                "start": {
                                  "line": 656,
                                  "column": 17
                                },
                                "end": {
                                  "line": 656,
                                  "column": 32
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 25480,
                                "end": 25486,
                                "loc": {
                                  "start": {
                                    "line": 656,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 656,
                                    "column": 23
                                  }
                                },
                                "name": "member"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 25487,
                                "end": 25495,
                                "loc": {
                                  "start": {
                                    "line": 656,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 656,
                                    "column": 32
                                  }
                                },
                                "name": "userData"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 25496,
                              "end": 25506,
                              "loc": {
                                "start": {
                                  "line": 656,
                                  "column": 33
                                },
                                "end": {
                                  "line": 656,
                                  "column": 43
                                }
                              },
                              "name": "memberInfo"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "let"
                    },
                    {
                      "type": "SwitchStatement",
                      "start": 25516,
                      "end": 25797,
                      "loc": {
                        "start": {
                          "line": 657,
                          "column": 8
                        },
                        "end": {
                          "line": 661,
                          "column": 9
                        }
                      },
                      "discriminant": {
                        "type": "MemberExpression",
                        "start": 25524,
                        "end": 25531,
                        "loc": {
                          "start": {
                            "line": 657,
                            "column": 16
                          },
                          "end": {
                            "line": 657,
                            "column": 23
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 25524,
                          "end": 25526,
                          "loc": {
                            "start": {
                              "line": 657,
                              "column": 16
                            },
                            "end": {
                              "line": 657,
                              "column": 18
                            }
                          },
                          "name": "mi"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 25527,
                          "end": 25531,
                          "loc": {
                            "start": {
                              "line": 657,
                              "column": 19
                            },
                            "end": {
                              "line": 657,
                              "column": 23
                            }
                          },
                          "name": "name"
                        },
                        "computed": false
                      },
                      "cases": [
                        {
                          "type": "SwitchCase",
                          "start": 25547,
                          "end": 25598,
                          "loc": {
                            "start": {
                              "line": 658,
                              "column": 12
                            },
                            "end": {
                              "line": 658,
                              "column": 63
                            }
                          },
                          "consequent": [
                            {
                              "type": "ExpressionStatement",
                              "start": 25564,
                              "end": 25591,
                              "loc": {
                                "start": {
                                  "line": 658,
                                  "column": 29
                                },
                                "end": {
                                  "line": 658,
                                  "column": 56
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 25564,
                                "end": 25590,
                                "loc": {
                                  "start": {
                                    "line": 658,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 658,
                                    "column": 55
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 25564,
                                  "end": 25582,
                                  "loc": {
                                    "start": {
                                      "line": 658,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 658,
                                      "column": 47
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 25564,
                                    "end": 25577,
                                    "loc": {
                                      "start": {
                                        "line": 658,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 658,
                                        "column": 42
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 25564,
                                      "end": 25568,
                                      "loc": {
                                        "start": {
                                          "line": 658,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 658,
                                          "column": 33
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 25569,
                                      "end": 25577,
                                      "loc": {
                                        "start": {
                                          "line": 658,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 658,
                                          "column": 42
                                        }
                                      },
                                      "name": "position"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 25578,
                                    "end": 25582,
                                    "loc": {
                                      "start": {
                                        "line": 658,
                                        "column": 43
                                      },
                                      "end": {
                                        "line": 658,
                                        "column": 47
                                      }
                                    },
                                    "name": "copy"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 25583,
                                    "end": 25589,
                                    "loc": {
                                      "start": {
                                        "line": 658,
                                        "column": 48
                                      },
                                      "end": {
                                        "line": 658,
                                        "column": 54
                                      }
                                    },
                                    "name": "member"
                                  }
                                ]
                              }
                            },
                            {
                              "type": "BreakStatement",
                              "start": 25592,
                              "end": 25598,
                              "loc": {
                                "start": {
                                  "line": 658,
                                  "column": 57
                                },
                                "end": {
                                  "line": 658,
                                  "column": 63
                                }
                              },
                              "label": null
                            }
                          ],
                          "test": {
                            "type": "Literal",
                            "start": 25552,
                            "end": 25562,
                            "loc": {
                              "start": {
                                "line": 658,
                                "column": 17
                              },
                              "end": {
                                "line": 658,
                                "column": 27
                              }
                            },
                            "value": "Position",
                            "rawValue": "Position",
                            "raw": "'Position'"
                          }
                        },
                        {
                          "type": "SwitchCase",
                          "start": 25611,
                          "end": 25704,
                          "loc": {
                            "start": {
                              "line": 659,
                              "column": 12
                            },
                            "end": {
                              "line": 659,
                              "column": 105
                            }
                          },
                          "consequent": [
                            {
                              "type": "ExpressionStatement",
                              "start": 25626,
                              "end": 25697,
                              "loc": {
                                "start": {
                                  "line": 659,
                                  "column": 27
                                },
                                "end": {
                                  "line": 659,
                                  "column": 98
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 25626,
                                "end": 25696,
                                "loc": {
                                  "start": {
                                    "line": 659,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 659,
                                    "column": 97
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 25626,
                                  "end": 25660,
                                  "loc": {
                                    "start": {
                                      "line": 659,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 659,
                                      "column": 61
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 25626,
                                    "end": 25641,
                                    "loc": {
                                      "start": {
                                        "line": 659,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 659,
                                        "column": 42
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 25626,
                                      "end": 25630,
                                      "loc": {
                                        "start": {
                                          "line": 659,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 659,
                                          "column": 31
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 25631,
                                      "end": 25641,
                                      "loc": {
                                        "start": {
                                          "line": 659,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 659,
                                          "column": 42
                                        }
                                      },
                                      "name": "quaternion"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 25642,
                                    "end": 25660,
                                    "loc": {
                                      "start": {
                                        "line": 659,
                                        "column": 43
                                      },
                                      "end": {
                                        "line": 659,
                                        "column": 61
                                      }
                                    },
                                    "name": "setFromUnitVectors"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "NewExpression",
                                    "start": 25661,
                                    "end": 25687,
                                    "loc": {
                                      "start": {
                                        "line": 659,
                                        "column": 62
                                      },
                                      "end": {
                                        "line": 659,
                                        "column": 88
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 25665,
                                      "end": 25678,
                                      "loc": {
                                        "start": {
                                          "line": 659,
                                          "column": 66
                                        },
                                        "end": {
                                          "line": 659,
                                          "column": 79
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 25665,
                                        "end": 25670,
                                        "loc": {
                                          "start": {
                                            "line": 659,
                                            "column": 66
                                          },
                                          "end": {
                                            "line": 659,
                                            "column": 71
                                          }
                                        },
                                        "name": "THREE"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 25671,
                                        "end": 25678,
                                        "loc": {
                                          "start": {
                                            "line": 659,
                                            "column": 72
                                          },
                                          "end": {
                                            "line": 659,
                                            "column": 79
                                          }
                                        },
                                        "name": "Vector3"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Literal",
                                        "start": 25679,
                                        "end": 25680,
                                        "loc": {
                                          "start": {
                                            "line": 659,
                                            "column": 80
                                          },
                                          "end": {
                                            "line": 659,
                                            "column": 81
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 25682,
                                        "end": 25683,
                                        "loc": {
                                          "start": {
                                            "line": 659,
                                            "column": 83
                                          },
                                          "end": {
                                            "line": 659,
                                            "column": 84
                                          }
                                        },
                                        "value": 0,
                                        "rawValue": 0,
                                        "raw": "0"
                                      },
                                      {
                                        "type": "Literal",
                                        "start": 25685,
                                        "end": 25686,
                                        "loc": {
                                          "start": {
                                            "line": 659,
                                            "column": 86
                                          },
                                          "end": {
                                            "line": 659,
                                            "column": 87
                                          }
                                        },
                                        "value": 1,
                                        "rawValue": 1,
                                        "raw": "1"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "Identifier",
                                    "start": 25689,
                                    "end": 25695,
                                    "loc": {
                                      "start": {
                                        "line": 659,
                                        "column": 90
                                      },
                                      "end": {
                                        "line": 659,
                                        "column": 96
                                      }
                                    },
                                    "name": "member"
                                  }
                                ]
                              }
                            },
                            {
                              "type": "BreakStatement",
                              "start": 25698,
                              "end": 25704,
                              "loc": {
                                "start": {
                                  "line": 659,
                                  "column": 99
                                },
                                "end": {
                                  "line": 659,
                                  "column": 105
                                }
                              },
                              "label": null
                            }
                          ],
                          "test": {
                            "type": "Literal",
                            "start": 25616,
                            "end": 25624,
                            "loc": {
                              "start": {
                                "line": 659,
                                "column": 17
                              },
                              "end": {
                                "line": 659,
                                "column": 25
                              }
                            },
                            "value": "Normal",
                            "rawValue": "Normal",
                            "raw": "'Normal'"
                          }
                        },
                        {
                          "type": "SwitchCase",
                          "start": 25717,
                          "end": 25787,
                          "loc": {
                            "start": {
                              "line": 660,
                              "column": 12
                            },
                            "end": {
                              "line": 660,
                              "column": 82
                            }
                          },
                          "consequent": [
                            {
                              "type": "VariableDeclaration",
                              "start": 25730,
                              "end": 25755,
                              "loc": {
                                "start": {
                                  "line": 660,
                                  "column": 25
                                },
                                "end": {
                                  "line": 660,
                                  "column": 50
                                }
                              },
                              "declarations": [
                                {
                                  "type": "VariableDeclarator",
                                  "start": 25734,
                                  "end": 25754,
                                  "loc": {
                                    "start": {
                                      "line": 660,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 660,
                                      "column": 49
                                    }
                                  },
                                  "id": {
                                    "type": "Identifier",
                                    "start": 25734,
                                    "end": 25735,
                                    "loc": {
                                      "start": {
                                        "line": 660,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 660,
                                        "column": 30
                                      }
                                    },
                                    "name": "s"
                                  },
                                  "init": {
                                    "type": "CallExpression",
                                    "start": 25738,
                                    "end": 25754,
                                    "loc": {
                                      "start": {
                                        "line": 660,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 660,
                                        "column": 49
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 25738,
                                      "end": 25752,
                                      "loc": {
                                        "start": {
                                          "line": 660,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 660,
                                          "column": 47
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 25738,
                                        "end": 25744,
                                        "loc": {
                                          "start": {
                                            "line": 660,
                                            "column": 33
                                          },
                                          "end": {
                                            "line": 660,
                                            "column": 39
                                          }
                                        },
                                        "name": "member"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 25745,
                                        "end": 25752,
                                        "loc": {
                                          "start": {
                                            "line": 660,
                                            "column": 40
                                          },
                                          "end": {
                                            "line": 660,
                                            "column": 47
                                          }
                                        },
                                        "name": "valueOf"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                }
                              ],
                              "kind": "let"
                            },
                            {
                              "type": "ExpressionStatement",
                              "start": 25756,
                              "end": 25780,
                              "loc": {
                                "start": {
                                  "line": 660,
                                  "column": 51
                                },
                                "end": {
                                  "line": 660,
                                  "column": 75
                                }
                              },
                              "expression": {
                                "type": "CallExpression",
                                "start": 25756,
                                "end": 25779,
                                "loc": {
                                  "start": {
                                    "line": 660,
                                    "column": 51
                                  },
                                  "end": {
                                    "line": 660,
                                    "column": 74
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 25756,
                                  "end": 25770,
                                  "loc": {
                                    "start": {
                                      "line": 660,
                                      "column": 51
                                    },
                                    "end": {
                                      "line": 660,
                                      "column": 65
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 25756,
                                    "end": 25766,
                                    "loc": {
                                      "start": {
                                        "line": 660,
                                        "column": 51
                                      },
                                      "end": {
                                        "line": 660,
                                        "column": 61
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 25756,
                                      "end": 25760,
                                      "loc": {
                                        "start": {
                                          "line": 660,
                                          "column": 51
                                        },
                                        "end": {
                                          "line": 660,
                                          "column": 55
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 25761,
                                      "end": 25766,
                                      "loc": {
                                        "start": {
                                          "line": 660,
                                          "column": 56
                                        },
                                        "end": {
                                          "line": 660,
                                          "column": 61
                                        }
                                      },
                                      "name": "scale"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 25767,
                                    "end": 25770,
                                    "loc": {
                                      "start": {
                                        "line": 660,
                                        "column": 62
                                      },
                                      "end": {
                                        "line": 660,
                                        "column": 65
                                      }
                                    },
                                    "name": "set"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 25771,
                                    "end": 25772,
                                    "loc": {
                                      "start": {
                                        "line": 660,
                                        "column": 66
                                      },
                                      "end": {
                                        "line": 660,
                                        "column": 67
                                      }
                                    },
                                    "name": "s"
                                  },
                                  {
                                    "type": "Identifier",
                                    "start": 25774,
                                    "end": 25775,
                                    "loc": {
                                      "start": {
                                        "line": 660,
                                        "column": 69
                                      },
                                      "end": {
                                        "line": 660,
                                        "column": 70
                                      }
                                    },
                                    "name": "s"
                                  },
                                  {
                                    "type": "Literal",
                                    "start": 25777,
                                    "end": 25778,
                                    "loc": {
                                      "start": {
                                        "line": 660,
                                        "column": 72
                                      },
                                      "end": {
                                        "line": 660,
                                        "column": 73
                                      }
                                    },
                                    "value": 1,
                                    "rawValue": 1,
                                    "raw": "1"
                                  }
                                ]
                              }
                            },
                            {
                              "type": "BreakStatement",
                              "start": 25781,
                              "end": 25787,
                              "loc": {
                                "start": {
                                  "line": 660,
                                  "column": 76
                                },
                                "end": {
                                  "line": 660,
                                  "column": 82
                                }
                              },
                              "label": null
                            }
                          ],
                          "test": {
                            "type": "Literal",
                            "start": 25722,
                            "end": 25728,
                            "loc": {
                              "start": {
                                "line": 660,
                                "column": 17
                              },
                              "end": {
                                "line": 660,
                                "column": 23
                              }
                            },
                            "value": "Size",
                            "rawValue": "Size",
                            "raw": "'Size'"
                          }
                        }
                      ]
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 25809,
              "end": 25883,
              "loc": {
                "start": {
                  "line": 664,
                  "column": 4
                },
                "end": {
                  "line": 666,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 25809,
                "end": 25825,
                "loc": {
                  "start": {
                    "line": 664,
                    "column": 4
                  },
                  "end": {
                    "line": 664,
                    "column": 20
                  }
                },
                "name": "finishedUpdating"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 25825,
                "end": 25883,
                "loc": {
                  "start": {
                    "line": 664,
                    "column": 20
                  },
                  "end": {
                    "line": 666,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 25828,
                  "end": 25883,
                  "loc": {
                    "start": {
                      "line": 664,
                      "column": 23
                    },
                    "end": {
                      "line": 666,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 25838,
                      "end": 25877,
                      "loc": {
                        "start": {
                          "line": 665,
                          "column": 8
                        },
                        "end": {
                          "line": 665,
                          "column": 47
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 25838,
                        "end": 25876,
                        "loc": {
                          "start": {
                            "line": 665,
                            "column": 8
                          },
                          "end": {
                            "line": 665,
                            "column": 46
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 25838,
                          "end": 25849,
                          "loc": {
                            "start": {
                              "line": 665,
                              "column": 8
                            },
                            "end": {
                              "line": 665,
                              "column": 19
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 25838,
                            "end": 25842,
                            "loc": {
                              "start": {
                                "line": 665,
                                "column": 8
                              },
                              "end": {
                                "line": 665,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 25843,
                            "end": 25849,
                            "loc": {
                              "start": {
                                "line": 665,
                                "column": 13
                              },
                              "end": {
                                "line": 665,
                                "column": 19
                              }
                            },
                            "name": "bubble"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 25850,
                            "end": 25869,
                            "loc": {
                              "start": {
                                "line": 665,
                                "column": 20
                              },
                              "end": {
                                "line": 665,
                                "column": 39
                              }
                            },
                            "value": "Updated.WorkPlane",
                            "rawValue": "Updated.WorkPlane",
                            "raw": "'Updated.WorkPlane'"
                          },
                          {
                            "type": "ThisExpression",
                            "start": 25871,
                            "end": 25875,
                            "loc": {
                              "start": {
                                "line": 665,
                                "column": 41
                              },
                              "end": {
                                "line": 665,
                                "column": 45
                              }
                            }
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            }
          ]
        },
        "leadingComments": [
          {
            "type": "CommentLine",
            "value": "number of cells in visible triangulation",
            "start": 24785,
            "end": 24827,
            "loc": {
              "start": {
                "line": 638,
                "column": 37
              },
              "end": {
                "line": 638,
                "column": 79
              }
            },
            "range": [
              24785,
              24827
            ]
          },
          {
            "type": "CommentLine",
            "value": "==============================     WorkPlane    ==============================",
            "start": 24829,
            "end": 24909,
            "loc": {
              "start": {
                "line": 640,
                "column": 0
              },
              "end": {
                "line": 640,
                "column": 80
              }
            },
            "range": [
              24829,
              24909
            ]
          }
        ],
        "trailingComments": []
      },
      "specifiers": [],
      "source": null,
      "leadingComments": [
        {
          "type": "CommentLine",
          "value": "number of cells in visible triangulation",
          "start": 24785,
          "end": 24827,
          "loc": {
            "start": {
              "line": 638,
              "column": 37
            },
            "end": {
              "line": 638,
              "column": 79
            }
          },
          "range": [
            24785,
            24827
          ]
        },
        {
          "type": "CommentLine",
          "value": "==============================     WorkPlane    ==============================",
          "start": 24829,
          "end": 24909,
          "loc": {
            "start": {
              "line": 640,
              "column": 0
            },
            "end": {
              "line": 640,
              "column": 80
            }
          },
          "range": [
            24829,
            24909
          ]
        }
      ]
    },
    {
      "type": "ExpressionStatement",
      "start": 25886,
      "end": 25942,
      "loc": {
        "start": {
          "line": 668,
          "column": 0
        },
        "end": {
          "line": 668,
          "column": 56
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 25886,
        "end": 25941,
        "loc": {
          "start": {
            "line": 668,
            "column": 0
          },
          "end": {
            "line": 668,
            "column": 55
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 25886,
          "end": 25929,
          "loc": {
            "start": {
              "line": 668,
              "column": 0
            },
            "end": {
              "line": 668,
              "column": 43
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 25886,
            "end": 25913,
            "loc": {
              "start": {
                "line": 668,
                "column": 0
              },
              "end": {
                "line": 668,
                "column": 27
              }
            },
            "object": {
              "type": "Identifier",
              "start": 25886,
              "end": 25900,
              "loc": {
                "start": {
                  "line": 668,
                  "column": 0
                },
                "end": {
                  "line": 668,
                  "column": 14
                }
              },
              "name": "ClassCadObject"
            },
            "property": {
              "type": "Identifier",
              "start": 25901,
              "end": 25913,
              "loc": {
                "start": {
                  "line": 668,
                  "column": 15
                },
                "end": {
                  "line": 668,
                  "column": 27
                }
              },
              "name": "classMapping"
            },
            "computed": false
          },
          "property": {
            "type": "Literal",
            "start": 25914,
            "end": 25928,
            "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": 25932,
          "end": 25941,
          "loc": {
            "start": {
              "line": 668,
              "column": 46
            },
            "end": {
              "line": 668,
              "column": 55
            }
          },
          "name": "WorkPlane"
        }
      },
      "trailingComments": [
        {
          "type": "CommentLine",
          "value": "==============================    Color set     ==============================",
          "start": 25944,
          "end": 26024,
          "loc": {
            "start": {
              "line": 670,
              "column": 0
            },
            "end": {
              "line": 670,
              "column": 80
            }
          },
          "range": [
            25944,
            26024
          ]
        }
      ]
    },
    {
      "type": "ExportNamedDeclaration",
      "start": 26025,
      "end": 27491,
      "loc": {
        "start": {
          "line": 671,
          "column": 0
        },
        "end": {
          "line": 704,
          "column": 1
        }
      },
      "declaration": {
        "type": "FunctionDeclaration",
        "start": 26032,
        "end": 27491,
        "loc": {
          "start": {
            "line": 671,
            "column": 7
          },
          "end": {
            "line": 704,
            "column": 1
          }
        },
        "id": {
          "type": "Identifier",
          "start": 26041,
          "end": 26049,
          "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": 26050,
            "end": 26056,
            "loc": {
              "start": {
                "line": 671,
                "column": 25
              },
              "end": {
                "line": 671,
                "column": 31
              }
            },
            "name": "object"
          },
          {
            "type": "Identifier",
            "start": 26058,
            "end": 26071,
            "loc": {
              "start": {
                "line": 671,
                "column": 33
              },
              "end": {
                "line": 671,
                "column": 46
              }
            },
            "name": "isHighlighted"
          }
        ],
        "body": {
          "type": "BlockStatement",
          "start": 26073,
          "end": 27491,
          "loc": {
            "start": {
              "line": 671,
              "column": 48
            },
            "end": {
              "line": 704,
              "column": 1
            }
          },
          "body": [
            {
              "type": "VariableDeclaration",
              "start": 26079,
              "end": 26110,
              "loc": {
                "start": {
                  "line": 672,
                  "column": 4
                },
                "end": {
                  "line": 672,
                  "column": 35
                }
              },
              "declarations": [
                {
                  "type": "VariableDeclarator",
                  "start": 26083,
                  "end": 26109,
                  "loc": {
                    "start": {
                      "line": 672,
                      "column": 8
                    },
                    "end": {
                      "line": 672,
                      "column": 34
                    }
                  },
                  "id": {
                    "type": "Identifier",
                    "start": 26083,
                    "end": 26098,
                    "loc": {
                      "start": {
                        "line": 672,
                        "column": 8
                      },
                      "end": {
                        "line": 672,
                        "column": 23
                      }
                    },
                    "name": "pointUsualColor"
                  },
                  "init": {
                    "type": "Literal",
                    "start": 26101,
                    "end": 26109,
                    "loc": {
                      "start": {
                        "line": 672,
                        "column": 26
                      },
                      "end": {
                        "line": 672,
                        "column": 34
                      }
                    },
                    "value": 10967001,
                    "rawValue": 10967001,
                    "raw": "0xa757d9"
                  }
                }
              ],
              "kind": "var"
            },
            {
              "type": "VariableDeclaration",
              "start": 26115,
              "end": 26152,
              "loc": {
                "start": {
                  "line": 673,
                  "column": 4
                },
                "end": {
                  "line": 673,
                  "column": 41
                }
              },
              "declarations": [
                {
                  "type": "VariableDeclarator",
                  "start": 26119,
                  "end": 26151,
                  "loc": {
                    "start": {
                      "line": 673,
                      "column": 8
                    },
                    "end": {
                      "line": 673,
                      "column": 40
                    }
                  },
                  "id": {
                    "type": "Identifier",
                    "start": 26119,
                    "end": 26140,
                    "loc": {
                      "start": {
                        "line": 673,
                        "column": 8
                      },
                      "end": {
                        "line": 673,
                        "column": 29
                      }
                    },
                    "name": "pointHighlightedColor"
                  },
                  "init": {
                    "type": "Literal",
                    "start": 26143,
                    "end": 26151,
                    "loc": {
                      "start": {
                        "line": 673,
                        "column": 32
                      },
                      "end": {
                        "line": 673,
                        "column": 40
                      }
                    },
                    "value": 12611824,
                    "rawValue": 12611824,
                    "raw": "0xc070f0"
                  }
                }
              ],
              "kind": "var"
            },
            {
              "type": "VariableDeclaration",
              "start": 26157,
              "end": 26193,
              "loc": {
                "start": {
                  "line": 674,
                  "column": 4
                },
                "end": {
                  "line": 674,
                  "column": 40
                }
              },
              "declarations": [
                {
                  "type": "VariableDeclarator",
                  "start": 26161,
                  "end": 26192,
                  "loc": {
                    "start": {
                      "line": 674,
                      "column": 8
                    },
                    "end": {
                      "line": 674,
                      "column": 39
                    }
                  },
                  "id": {
                    "type": "Identifier",
                    "start": 26161,
                    "end": 26181,
                    "loc": {
                      "start": {
                        "line": 674,
                        "column": 8
                      },
                      "end": {
                        "line": 674,
                        "column": 28
                      }
                    },
                    "name": "pointUsualColorFixed"
                  },
                  "init": {
                    "type": "Literal",
                    "start": 26184,
                    "end": 26192,
                    "loc": {
                      "start": {
                        "line": 674,
                        "column": 31
                      },
                      "end": {
                        "line": 674,
                        "column": 39
                      }
                    },
                    "value": 8947848,
                    "rawValue": 8947848,
                    "raw": "0x888888"
                  }
                }
              ],
              "kind": "var"
            },
            {
              "type": "VariableDeclaration",
              "start": 26198,
              "end": 26240,
              "loc": {
                "start": {
                  "line": 675,
                  "column": 4
                },
                "end": {
                  "line": 675,
                  "column": 46
                }
              },
              "declarations": [
                {
                  "type": "VariableDeclarator",
                  "start": 26202,
                  "end": 26239,
                  "loc": {
                    "start": {
                      "line": 675,
                      "column": 8
                    },
                    "end": {
                      "line": 675,
                      "column": 45
                    }
                  },
                  "id": {
                    "type": "Identifier",
                    "start": 26202,
                    "end": 26228,
                    "loc": {
                      "start": {
                        "line": 675,
                        "column": 8
                      },
                      "end": {
                        "line": 675,
                        "column": 34
                      }
                    },
                    "name": "pointHighlightedColorFixed"
                  },
                  "init": {
                    "type": "Literal",
                    "start": 26231,
                    "end": 26239,
                    "loc": {
                      "start": {
                        "line": 675,
                        "column": 37
                      },
                      "end": {
                        "line": 675,
                        "column": 45
                      }
                    },
                    "value": 15658734,
                    "rawValue": 15658734,
                    "raw": "0xeeeeee"
                  }
                }
              ],
              "kind": "var"
            },
            {
              "type": "VariableDeclaration",
              "start": 26245,
              "end": 26354,
              "loc": {
                "start": {
                  "line": 676,
                  "column": 4
                },
                "end": {
                  "line": 676,
                  "column": 113
                }
              },
              "declarations": [
                {
                  "type": "VariableDeclarator",
                  "start": 26249,
                  "end": 26353,
                  "loc": {
                    "start": {
                      "line": 676,
                      "column": 8
                    },
                    "end": {
                      "line": 676,
                      "column": 112
                    }
                  },
                  "id": {
                    "type": "Identifier",
                    "start": 26249,
                    "end": 26260,
                    "loc": {
                      "start": {
                        "line": 676,
                        "column": 8
                      },
                      "end": {
                        "line": 676,
                        "column": 19
                      }
                    },
                    "name": "pointColors"
                  },
                  "init": {
                    "type": "ArrayExpression",
                    "start": 26263,
                    "end": 26353,
                    "loc": {
                      "start": {
                        "line": 676,
                        "column": 22
                      },
                      "end": {
                        "line": 676,
                        "column": 112
                      }
                    },
                    "elements": [
                      {
                        "type": "Identifier",
                        "start": 26264,
                        "end": 26279,
                        "loc": {
                          "start": {
                            "line": 676,
                            "column": 23
                          },
                          "end": {
                            "line": 676,
                            "column": 38
                          }
                        },
                        "name": "pointUsualColor"
                      },
                      {
                        "type": "Identifier",
                        "start": 26281,
                        "end": 26302,
                        "loc": {
                          "start": {
                            "line": 676,
                            "column": 40
                          },
                          "end": {
                            "line": 676,
                            "column": 61
                          }
                        },
                        "name": "pointHighlightedColor"
                      },
                      {
                        "type": "Identifier",
                        "start": 26304,
                        "end": 26324,
                        "loc": {
                          "start": {
                            "line": 676,
                            "column": 63
                          },
                          "end": {
                            "line": 676,
                            "column": 83
                          }
                        },
                        "name": "pointUsualColorFixed"
                      },
                      {
                        "type": "Identifier",
                        "start": 26326,
                        "end": 26352,
                        "loc": {
                          "start": {
                            "line": 676,
                            "column": 85
                          },
                          "end": {
                            "line": 676,
                            "column": 111
                          }
                        },
                        "name": "pointHighlightedColorFixed"
                      }
                    ]
                  }
                }
              ],
              "kind": "var"
            },
            {
              "type": "VariableDeclaration",
              "start": 26359,
              "end": 26389,
              "loc": {
                "start": {
                  "line": 677,
                  "column": 4
                },
                "end": {
                  "line": 677,
                  "column": 34
                }
              },
              "declarations": [
                {
                  "type": "VariableDeclarator",
                  "start": 26363,
                  "end": 26388,
                  "loc": {
                    "start": {
                      "line": 677,
                      "column": 8
                    },
                    "end": {
                      "line": 677,
                      "column": 33
                    }
                  },
                  "id": {
                    "type": "Identifier",
                    "start": 26363,
                    "end": 26377,
                    "loc": {
                      "start": {
                        "line": 677,
                        "column": 8
                      },
                      "end": {
                        "line": 677,
                        "column": 22
                      }
                    },
                    "name": "lineUsualColor"
                  },
                  "init": {
                    "type": "Literal",
                    "start": 26380,
                    "end": 26388,
                    "loc": {
                      "start": {
                        "line": 677,
                        "column": 25
                      },
                      "end": {
                        "line": 677,
                        "column": 33
                      }
                    },
                    "value": 3373218,
                    "rawValue": 3373218,
                    "raw": "0x3378a2"
                  }
                }
              ],
              "kind": "var"
            },
            {
              "type": "VariableDeclaration",
              "start": 26394,
              "end": 26430,
              "loc": {
                "start": {
                  "line": 678,
                  "column": 4
                },
                "end": {
                  "line": 678,
                  "column": 40
                }
              },
              "declarations": [
                {
                  "type": "VariableDeclarator",
                  "start": 26398,
                  "end": 26429,
                  "loc": {
                    "start": {
                      "line": 678,
                      "column": 8
                    },
                    "end": {
                      "line": 678,
                      "column": 39
                    }
                  },
                  "id": {
                    "type": "Identifier",
                    "start": 26398,
                    "end": 26418,
                    "loc": {
                      "start": {
                        "line": 678,
                        "column": 8
                      },
                      "end": {
                        "line": 678,
                        "column": 28
                      }
                    },
                    "name": "lineHighlightedColor"
                  },
                  "init": {
                    "type": "Literal",
                    "start": 26421,
                    "end": 26429,
                    "loc": {
                      "start": {
                        "line": 678,
                        "column": 31
                      },
                      "end": {
                        "line": 678,
                        "column": 39
                      }
                    },
                    "value": 11194324,
                    "rawValue": 11194324,
                    "raw": "0xaacfd4"
                  }
                }
              ],
              "kind": "var"
            },
            {
              "type": "VariableDeclaration",
              "start": 26435,
              "end": 26470,
              "loc": {
                "start": {
                  "line": 679,
                  "column": 4
                },
                "end": {
                  "line": 679,
                  "column": 39
                }
              },
              "declarations": [
                {
                  "type": "VariableDeclarator",
                  "start": 26439,
                  "end": 26469,
                  "loc": {
                    "start": {
                      "line": 679,
                      "column": 8
                    },
                    "end": {
                      "line": 679,
                      "column": 38
                    }
                  },
                  "id": {
                    "type": "Identifier",
                    "start": 26439,
                    "end": 26458,
                    "loc": {
                      "start": {
                        "line": 679,
                        "column": 8
                      },
                      "end": {
                        "line": 679,
                        "column": 27
                      }
                    },
                    "name": "lineUsualColorFixed"
                  },
                  "init": {
                    "type": "Literal",
                    "start": 26461,
                    "end": 26469,
                    "loc": {
                      "start": {
                        "line": 679,
                        "column": 30
                      },
                      "end": {
                        "line": 679,
                        "column": 38
                      }
                    },
                    "value": 8947848,
                    "rawValue": 8947848,
                    "raw": "0x888888"
                  }
                }
              ],
              "kind": "var"
            },
            {
              "type": "VariableDeclaration",
              "start": 26475,
              "end": 26516,
              "loc": {
                "start": {
                  "line": 680,
                  "column": 4
                },
                "end": {
                  "line": 680,
                  "column": 45
                }
              },
              "declarations": [
                {
                  "type": "VariableDeclarator",
                  "start": 26479,
                  "end": 26515,
                  "loc": {
                    "start": {
                      "line": 680,
                      "column": 8
                    },
                    "end": {
                      "line": 680,
                      "column": 44
                    }
                  },
                  "id": {
                    "type": "Identifier",
                    "start": 26479,
                    "end": 26504,
                    "loc": {
                      "start": {
                        "line": 680,
                        "column": 8
                      },
                      "end": {
                        "line": 680,
                        "column": 33
                      }
                    },
                    "name": "lineHighlightedColorFixed"
                  },
                  "init": {
                    "type": "Literal",
                    "start": 26507,
                    "end": 26515,
                    "loc": {
                      "start": {
                        "line": 680,
                        "column": 36
                      },
                      "end": {
                        "line": 680,
                        "column": 44
                      }
                    },
                    "value": 15658734,
                    "rawValue": 15658734,
                    "raw": "0xeeeeee"
                  }
                }
              ],
              "kind": "var"
            },
            {
              "type": "VariableDeclaration",
              "start": 26521,
              "end": 26625,
              "loc": {
                "start": {
                  "line": 681,
                  "column": 4
                },
                "end": {
                  "line": 681,
                  "column": 108
                }
              },
              "declarations": [
                {
                  "type": "VariableDeclarator",
                  "start": 26525,
                  "end": 26624,
                  "loc": {
                    "start": {
                      "line": 681,
                      "column": 8
                    },
                    "end": {
                      "line": 681,
                      "column": 107
                    }
                  },
                  "id": {
                    "type": "Identifier",
                    "start": 26525,
                    "end": 26535,
                    "loc": {
                      "start": {
                        "line": 681,
                        "column": 8
                      },
                      "end": {
                        "line": 681,
                        "column": 18
                      }
                    },
                    "name": "lineColors"
                  },
                  "init": {
                    "type": "ArrayExpression",
                    "start": 26538,
                    "end": 26624,
                    "loc": {
                      "start": {
                        "line": 681,
                        "column": 21
                      },
                      "end": {
                        "line": 681,
                        "column": 107
                      }
                    },
                    "elements": [
                      {
                        "type": "Identifier",
                        "start": 26539,
                        "end": 26553,
                        "loc": {
                          "start": {
                            "line": 681,
                            "column": 22
                          },
                          "end": {
                            "line": 681,
                            "column": 36
                          }
                        },
                        "name": "lineUsualColor"
                      },
                      {
                        "type": "Identifier",
                        "start": 26555,
                        "end": 26575,
                        "loc": {
                          "start": {
                            "line": 681,
                            "column": 38
                          },
                          "end": {
                            "line": 681,
                            "column": 58
                          }
                        },
                        "name": "lineHighlightedColor"
                      },
                      {
                        "type": "Identifier",
                        "start": 26577,
                        "end": 26596,
                        "loc": {
                          "start": {
                            "line": 681,
                            "column": 60
                          },
                          "end": {
                            "line": 681,
                            "column": 79
                          }
                        },
                        "name": "lineUsualColorFixed"
                      },
                      {
                        "type": "Identifier",
                        "start": 26598,
                        "end": 26623,
                        "loc": {
                          "start": {
                            "line": 681,
                            "column": 81
                          },
                          "end": {
                            "line": 681,
                            "column": 106
                          }
                        },
                        "name": "lineHighlightedColorFixed"
                      }
                    ]
                  }
                }
              ],
              "kind": "var"
            },
            {
              "type": "VariableDeclaration",
              "start": 26630,
              "end": 26659,
              "loc": {
                "start": {
                  "line": 682,
                  "column": 4
                },
                "end": {
                  "line": 682,
                  "column": 33
                }
              },
              "declarations": [
                {
                  "type": "VariableDeclarator",
                  "start": 26634,
                  "end": 26658,
                  "loc": {
                    "start": {
                      "line": 682,
                      "column": 8
                    },
                    "end": {
                      "line": 682,
                      "column": 32
                    }
                  },
                  "id": {
                    "type": "Identifier",
                    "start": 26634,
                    "end": 26647,
                    "loc": {
                      "start": {
                        "line": 682,
                        "column": 8
                      },
                      "end": {
                        "line": 682,
                        "column": 21
                      }
                    },
                    "name": "arcUsualColor"
                  },
                  "init": {
                    "type": "Literal",
                    "start": 26650,
                    "end": 26658,
                    "loc": {
                      "start": {
                        "line": 682,
                        "column": 24
                      },
                      "end": {
                        "line": 682,
                        "column": 32
                      }
                    },
                    "value": 12731257,
                    "rawValue": 12731257,
                    "raw": "0xc24379"
                  }
                }
              ],
              "kind": "var"
            },
            {
              "type": "VariableDeclaration",
              "start": 26664,
              "end": 26699,
              "loc": {
                "start": {
                  "line": 683,
                  "column": 4
                },
                "end": {
                  "line": 683,
                  "column": 39
                }
              },
              "declarations": [
                {
                  "type": "VariableDeclarator",
                  "start": 26668,
                  "end": 26698,
                  "loc": {
                    "start": {
                      "line": 683,
                      "column": 8
                    },
                    "end": {
                      "line": 683,
                      "column": 38
                    }
                  },
                  "id": {
                    "type": "Identifier",
                    "start": 26668,
                    "end": 26687,
                    "loc": {
                      "start": {
                        "line": 683,
                        "column": 8
                      },
                      "end": {
                        "line": 683,
                        "column": 27
                      }
                    },
                    "name": "arcHighlightedColor"
                  },
                  "init": {
                    "type": "Literal",
                    "start": 26690,
                    "end": 26698,
                    "loc": {
                      "start": {
                        "line": 683,
                        "column": 30
                      },
                      "end": {
                        "line": 683,
                        "column": 38
                      }
                    },
                    "value": 15226024,
                    "rawValue": 15226024,
                    "raw": "0xe854a8"
                  }
                }
              ],
              "kind": "var"
            },
            {
              "type": "VariableDeclaration",
              "start": 26704,
              "end": 26738,
              "loc": {
                "start": {
                  "line": 684,
                  "column": 4
                },
                "end": {
                  "line": 684,
                  "column": 38
                }
              },
              "declarations": [
                {
                  "type": "VariableDeclarator",
                  "start": 26708,
                  "end": 26737,
                  "loc": {
                    "start": {
                      "line": 684,
                      "column": 8
                    },
                    "end": {
                      "line": 684,
                      "column": 37
                    }
                  },
                  "id": {
                    "type": "Identifier",
                    "start": 26708,
                    "end": 26726,
                    "loc": {
                      "start": {
                        "line": 684,
                        "column": 8
                      },
                      "end": {
                        "line": 684,
                        "column": 26
                      }
                    },
                    "name": "arcUsualColorFixed"
                  },
                  "init": {
                    "type": "Literal",
                    "start": 26729,
                    "end": 26737,
                    "loc": {
                      "start": {
                        "line": 684,
                        "column": 29
                      },
                      "end": {
                        "line": 684,
                        "column": 37
                      }
                    },
                    "value": 8947848,
                    "rawValue": 8947848,
                    "raw": "0x888888"
                  }
                }
              ],
              "kind": "var"
            },
            {
              "type": "VariableDeclaration",
              "start": 26743,
              "end": 26783,
              "loc": {
                "start": {
                  "line": 685,
                  "column": 4
                },
                "end": {
                  "line": 685,
                  "column": 44
                }
              },
              "declarations": [
                {
                  "type": "VariableDeclarator",
                  "start": 26747,
                  "end": 26782,
                  "loc": {
                    "start": {
                      "line": 685,
                      "column": 8
                    },
                    "end": {
                      "line": 685,
                      "column": 43
                    }
                  },
                  "id": {
                    "type": "Identifier",
                    "start": 26747,
                    "end": 26771,
                    "loc": {
                      "start": {
                        "line": 685,
                        "column": 8
                      },
                      "end": {
                        "line": 685,
                        "column": 32
                      }
                    },
                    "name": "arcHighlightedColorFixed"
                  },
                  "init": {
                    "type": "Literal",
                    "start": 26774,
                    "end": 26782,
                    "loc": {
                      "start": {
                        "line": 685,
                        "column": 35
                      },
                      "end": {
                        "line": 685,
                        "column": 43
                      }
                    },
                    "value": 15658734,
                    "rawValue": 15658734,
                    "raw": "0xeeeeee"
                  }
                }
              ],
              "kind": "var"
            },
            {
              "type": "VariableDeclaration",
              "start": 26788,
              "end": 26887,
              "loc": {
                "start": {
                  "line": 686,
                  "column": 4
                },
                "end": {
                  "line": 686,
                  "column": 103
                }
              },
              "declarations": [
                {
                  "type": "VariableDeclarator",
                  "start": 26792,
                  "end": 26886,
                  "loc": {
                    "start": {
                      "line": 686,
                      "column": 8
                    },
                    "end": {
                      "line": 686,
                      "column": 102
                    }
                  },
                  "id": {
                    "type": "Identifier",
                    "start": 26792,
                    "end": 26801,
                    "loc": {
                      "start": {
                        "line": 686,
                        "column": 8
                      },
                      "end": {
                        "line": 686,
                        "column": 17
                      }
                    },
                    "name": "arcColors"
                  },
                  "init": {
                    "type": "ArrayExpression",
                    "start": 26804,
                    "end": 26886,
                    "loc": {
                      "start": {
                        "line": 686,
                        "column": 20
                      },
                      "end": {
                        "line": 686,
                        "column": 102
                      }
                    },
                    "elements": [
                      {
                        "type": "Identifier",
                        "start": 26805,
                        "end": 26818,
                        "loc": {
                          "start": {
                            "line": 686,
                            "column": 21
                          },
                          "end": {
                            "line": 686,
                            "column": 34
                          }
                        },
                        "name": "arcUsualColor"
                      },
                      {
                        "type": "Identifier",
                        "start": 26820,
                        "end": 26839,
                        "loc": {
                          "start": {
                            "line": 686,
                            "column": 36
                          },
                          "end": {
                            "line": 686,
                            "column": 55
                          }
                        },
                        "name": "arcHighlightedColor"
                      },
                      {
                        "type": "Identifier",
                        "start": 26841,
                        "end": 26859,
                        "loc": {
                          "start": {
                            "line": 686,
                            "column": 57
                          },
                          "end": {
                            "line": 686,
                            "column": 75
                          }
                        },
                        "name": "arcUsualColorFixed"
                      },
                      {
                        "type": "Identifier",
                        "start": 26861,
                        "end": 26885,
                        "loc": {
                          "start": {
                            "line": 686,
                            "column": 77
                          },
                          "end": {
                            "line": 686,
                            "column": 101
                          }
                        },
                        "name": "arcHighlightedColorFixed"
                      }
                    ]
                  }
                }
              ],
              "kind": "var"
            },
            {
              "type": "VariableDeclaration",
              "start": 26892,
              "end": 26918,
              "loc": {
                "start": {
                  "line": 687,
                  "column": 4
                },
                "end": {
                  "line": 687,
                  "column": 30
                }
              },
              "declarations": [
                {
                  "type": "VariableDeclarator",
                  "start": 26896,
                  "end": 26917,
                  "loc": {
                    "start": {
                      "line": 687,
                      "column": 8
                    },
                    "end": {
                      "line": 687,
                      "column": 29
                    }
                  },
                  "id": {
                    "type": "Identifier",
                    "start": 26896,
                    "end": 26906,
                    "loc": {
                      "start": {
                        "line": 687,
                        "column": 8
                      },
                      "end": {
                        "line": 687,
                        "column": 18
                      }
                    },
                    "name": "planeColor"
                  },
                  "init": {
                    "type": "Literal",
                    "start": 26909,
                    "end": 26917,
                    "loc": {
                      "start": {
                        "line": 687,
                        "column": 21
                      },
                      "end": {
                        "line": 687,
                        "column": 29
                      }
                    },
                    "value": 8355711,
                    "rawValue": 8355711,
                    "raw": "0x7f7f7f"
                  }
                }
              ],
              "kind": "var"
            },
            {
              "type": "VariableDeclaration",
              "start": 26924,
              "end": 26965,
              "loc": {
                "start": {
                  "line": 689,
                  "column": 4
                },
                "end": {
                  "line": 689,
                  "column": 45
                }
              },
              "declarations": [
                {
                  "type": "VariableDeclarator",
                  "start": 26928,
                  "end": 26964,
                  "loc": {
                    "start": {
                      "line": 689,
                      "column": 8
                    },
                    "end": {
                      "line": 689,
                      "column": 44
                    }
                  },
                  "id": {
                    "type": "Identifier",
                    "start": 26928,
                    "end": 26934,
                    "loc": {
                      "start": {
                        "line": 689,
                        "column": 8
                      },
                      "end": {
                        "line": 689,
                        "column": 14
                      }
                    },
                    "name": "sketch"
                  },
                  "init": {
                    "type": "CallExpression",
                    "start": 26937,
                    "end": 26964,
                    "loc": {
                      "start": {
                        "line": 689,
                        "column": 17
                      },
                      "end": {
                        "line": 689,
                        "column": 44
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 26937,
                      "end": 26956,
                      "loc": {
                        "start": {
                          "line": 689,
                          "column": 17
                        },
                        "end": {
                          "line": 689,
                          "column": 36
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 26937,
                        "end": 26943,
                        "loc": {
                          "start": {
                            "line": 689,
                            "column": 17
                          },
                          "end": {
                            "line": 689,
                            "column": 23
                          }
                        },
                        "name": "Sketch"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 26944,
                        "end": 26956,
                        "loc": {
                          "start": {
                            "line": 689,
                            "column": 24
                          },
                          "end": {
                            "line": 689,
                            "column": 36
                          }
                        },
                        "name": "FindSketchOf"
                      },
                      "computed": false
                    },
                    "arguments": [
                      {
                        "type": "Identifier",
                        "start": 26957,
                        "end": 26963,
                        "loc": {
                          "start": {
                            "line": 689,
                            "column": 37
                          },
                          "end": {
                            "line": 689,
                            "column": 43
                          }
                        },
                        "name": "object"
                      }
                    ]
                  }
                }
              ],
              "kind": "var"
            },
            {
              "type": "VariableDeclaration",
              "start": 26970,
              "end": 27081,
              "loc": {
                "start": {
                  "line": 690,
                  "column": 4
                },
                "end": {
                  "line": 690,
                  "column": 115
                }
              },
              "declarations": [
                {
                  "type": "VariableDeclarator",
                  "start": 26974,
                  "end": 27080,
                  "loc": {
                    "start": {
                      "line": 690,
                      "column": 8
                    },
                    "end": {
                      "line": 690,
                      "column": 114
                    }
                  },
                  "id": {
                    "type": "Identifier",
                    "start": 26974,
                    "end": 26981,
                    "loc": {
                      "start": {
                        "line": 690,
                        "column": 8
                      },
                      "end": {
                        "line": 690,
                        "column": 15
                      }
                    },
                    "name": "isFixed"
                  },
                  "init": {
                    "type": "ConditionalExpression",
                    "start": 26984,
                    "end": 27080,
                    "loc": {
                      "start": {
                        "line": 690,
                        "column": 18
                      },
                      "end": {
                        "line": 690,
                        "column": 114
                      }
                    },
                    "test": {
                      "type": "Identifier",
                      "start": 26984,
                      "end": 26990,
                      "loc": {
                        "start": {
                          "line": 690,
                          "column": 18
                        },
                        "end": {
                          "line": 690,
                          "column": 24
                        }
                      },
                      "name": "sketch"
                    },
                    "consequent": {
                      "type": "CallExpression",
                      "start": 26993,
                      "end": 27073,
                      "loc": {
                        "start": {
                          "line": 690,
                          "column": 27
                        },
                        "end": {
                          "line": 690,
                          "column": 107
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 26993,
                        "end": 27035,
                        "loc": {
                          "start": {
                            "line": 690,
                            "column": 27
                          },
                          "end": {
                            "line": 690,
                            "column": 69
                          }
                        },
                        "object": {
                          "type": "CallExpression",
                          "start": 26993,
                          "end": 27030,
                          "loc": {
                            "start": {
                              "line": 690,
                              "column": 27
                            },
                            "end": {
                              "line": 690,
                              "column": 64
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 26993,
                            "end": 27022,
                            "loc": {
                              "start": {
                                "line": 690,
                                "column": 27
                              },
                              "end": {
                                "line": 690,
                                "column": 56
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 26993,
                              "end": 26999,
                              "loc": {
                                "start": {
                                  "line": 690,
                                  "column": 27
                                },
                                "end": {
                                  "line": 690,
                                  "column": 33
                                }
                              },
                              "name": "sketch"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 27000,
                              "end": 27022,
                              "loc": {
                                "start": {
                                  "line": 690,
                                  "column": 34
                                },
                                "end": {
                                  "line": 690,
                                  "column": 56
                                }
                              },
                              "name": "getConstraintsOnSketch"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 27023,
                              "end": 27029,
                              "loc": {
                                "start": {
                                  "line": 690,
                                  "column": 57
                                },
                                "end": {
                                  "line": 690,
                                  "column": 63
                                }
                              },
                              "name": "object"
                            }
                          ]
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 27031,
                          "end": 27035,
                          "loc": {
                            "start": {
                              "line": 690,
                              "column": 65
                            },
                            "end": {
                              "line": 690,
                              "column": 69
                            }
                          },
                          "name": "some"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "ArrowFunctionExpression",
                          "start": 27036,
                          "end": 27072,
                          "loc": {
                            "start": {
                              "line": 690,
                              "column": 70
                            },
                            "end": {
                              "line": 690,
                              "column": 106
                            }
                          },
                          "id": null,
                          "generator": false,
                          "expression": true,
                          "async": false,
                          "params": [
                            {
                              "type": "Identifier",
                              "start": 27036,
                              "end": 27042,
                              "loc": {
                                "start": {
                                  "line": 690,
                                  "column": 70
                                },
                                "end": {
                                  "line": 690,
                                  "column": 76
                                }
                              },
                              "name": "constr"
                            }
                          ],
                          "body": {
                            "type": "BinaryExpression",
                            "start": 27046,
                            "end": 27072,
                            "loc": {
                              "start": {
                                "line": 690,
                                "column": 80
                              },
                              "end": {
                                "line": 690,
                                "column": 106
                              }
                            },
                            "left": {
                              "type": "MemberExpression",
                              "start": 27046,
                              "end": 27057,
                              "loc": {
                                "start": {
                                  "line": 690,
                                  "column": 80
                                },
                                "end": {
                                  "line": 690,
                                  "column": 91
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 27046,
                                "end": 27052,
                                "loc": {
                                  "start": {
                                    "line": 690,
                                    "column": 80
                                  },
                                  "end": {
                                    "line": 690,
                                    "column": 86
                                  }
                                },
                                "name": "constr"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 27053,
                                "end": 27057,
                                "loc": {
                                  "start": {
                                    "line": 690,
                                    "column": 87
                                  },
                                  "end": {
                                    "line": 690,
                                    "column": 91
                                  }
                                },
                                "name": "name"
                              },
                              "computed": false
                            },
                            "operator": "===",
                            "right": {
                              "type": "Literal",
                              "start": 27062,
                              "end": 27072,
                              "loc": {
                                "start": {
                                  "line": 690,
                                  "column": 96
                                },
                                "end": {
                                  "line": 690,
                                  "column": 106
                                }
                              },
                              "value": "FIXATION",
                              "rawValue": "FIXATION",
                              "raw": "\"FIXATION\""
                            }
                          }
                        }
                      ]
                    },
                    "alternate": {
                      "type": "Literal",
                      "start": 27075,
                      "end": 27080,
                      "loc": {
                        "start": {
                          "line": 690,
                          "column": 109
                        },
                        "end": {
                          "line": 690,
                          "column": 114
                        }
                      },
                      "value": false,
                      "rawValue": false,
                      "raw": "false"
                    }
                  }
                }
              ],
              "kind": "var"
            },
            {
              "type": "VariableDeclaration",
              "start": 27086,
              "end": 27142,
              "loc": {
                "start": {
                  "line": 691,
                  "column": 4
                },
                "end": {
                  "line": 691,
                  "column": 60
                }
              },
              "declarations": [
                {
                  "type": "VariableDeclarator",
                  "start": 27090,
                  "end": 27141,
                  "loc": {
                    "start": {
                      "line": 691,
                      "column": 8
                    },
                    "end": {
                      "line": 691,
                      "column": 59
                    }
                  },
                  "id": {
                    "type": "Identifier",
                    "start": 27090,
                    "end": 27095,
                    "loc": {
                      "start": {
                        "line": 691,
                        "column": 8
                      },
                      "end": {
                        "line": 691,
                        "column": 13
                      }
                    },
                    "name": "index"
                  },
                  "init": {
                    "type": "BinaryExpression",
                    "start": 27098,
                    "end": 27141,
                    "loc": {
                      "start": {
                        "line": 691,
                        "column": 16
                      },
                      "end": {
                        "line": 691,
                        "column": 59
                      }
                    },
                    "left": {
                      "type": "ConditionalExpression",
                      "start": 27099,
                      "end": 27114,
                      "loc": {
                        "start": {
                          "line": 691,
                          "column": 17
                        },
                        "end": {
                          "line": 691,
                          "column": 32
                        }
                      },
                      "test": {
                        "type": "Identifier",
                        "start": 27099,
                        "end": 27106,
                        "loc": {
                          "start": {
                            "line": 691,
                            "column": 17
                          },
                          "end": {
                            "line": 691,
                            "column": 24
                          }
                        },
                        "name": "isFixed"
                      },
                      "consequent": {
                        "type": "Literal",
                        "start": 27109,
                        "end": 27110,
                        "loc": {
                          "start": {
                            "line": 691,
                            "column": 27
                          },
                          "end": {
                            "line": 691,
                            "column": 28
                          }
                        },
                        "value": 2,
                        "rawValue": 2,
                        "raw": "2"
                      },
                      "alternate": {
                        "type": "Literal",
                        "start": 27113,
                        "end": 27114,
                        "loc": {
                          "start": {
                            "line": 691,
                            "column": 31
                          },
                          "end": {
                            "line": 691,
                            "column": 32
                          }
                        },
                        "value": 0,
                        "rawValue": 0,
                        "raw": "0"
                      },
                      "parenthesizedExpression": true
                    },
                    "operator": "+",
                    "right": {
                      "type": "ConditionalExpression",
                      "start": 27119,
                      "end": 27140,
                      "loc": {
                        "start": {
                          "line": 691,
                          "column": 37
                        },
                        "end": {
                          "line": 691,
                          "column": 58
                        }
                      },
                      "test": {
                        "type": "Identifier",
                        "start": 27119,
                        "end": 27132,
                        "loc": {
                          "start": {
                            "line": 691,
                            "column": 37
                          },
                          "end": {
                            "line": 691,
                            "column": 50
                          }
                        },
                        "name": "isHighlighted"
                      },
                      "consequent": {
                        "type": "Literal",
                        "start": 27135,
                        "end": 27136,
                        "loc": {
                          "start": {
                            "line": 691,
                            "column": 53
                          },
                          "end": {
                            "line": 691,
                            "column": 54
                          }
                        },
                        "value": 1,
                        "rawValue": 1,
                        "raw": "1"
                      },
                      "alternate": {
                        "type": "Literal",
                        "start": 27139,
                        "end": 27140,
                        "loc": {
                          "start": {
                            "line": 691,
                            "column": 57
                          },
                          "end": {
                            "line": 691,
                            "column": 58
                          }
                        },
                        "value": 0,
                        "rawValue": 0,
                        "raw": "0"
                      },
                      "parenthesizedExpression": true
                    }
                  }
                }
              ],
              "kind": "var"
            },
            {
              "type": "VariableDeclaration",
              "start": 27147,
              "end": 27169,
              "loc": {
                "start": {
                  "line": 692,
                  "column": 4
                },
                "end": {
                  "line": 692,
                  "column": 26
                }
              },
              "declarations": [
                {
                  "type": "VariableDeclarator",
                  "start": 27151,
                  "end": 27168,
                  "loc": {
                    "start": {
                      "line": 692,
                      "column": 8
                    },
                    "end": {
                      "line": 692,
                      "column": 25
                    }
                  },
                  "id": {
                    "type": "Identifier",
                    "start": 27151,
                    "end": 27156,
                    "loc": {
                      "start": {
                        "line": 692,
                        "column": 8
                      },
                      "end": {
                        "line": 692,
                        "column": 13
                      }
                    },
                    "name": "color"
                  },
                  "init": {
                    "type": "Identifier",
                    "start": 27159,
                    "end": 27168,
                    "loc": {
                      "start": {
                        "line": 692,
                        "column": 16
                      },
                      "end": {
                        "line": 692,
                        "column": 25
                      }
                    },
                    "name": "undefined"
                  }
                }
              ],
              "kind": "var"
            },
            {
              "type": "IfStatement",
              "start": 27175,
              "end": 27471,
              "loc": {
                "start": {
                  "line": 694,
                  "column": 4
                },
                "end": {
                  "line": 702,
                  "column": 5
                }
              },
              "test": {
                "type": "BinaryExpression",
                "start": 27179,
                "end": 27202,
                "loc": {
                  "start": {
                    "line": 694,
                    "column": 8
                  },
                  "end": {
                    "line": 694,
                    "column": 31
                  }
                },
                "left": {
                  "type": "Identifier",
                  "start": 27179,
                  "end": 27185,
                  "loc": {
                    "start": {
                      "line": 694,
                      "column": 8
                    },
                    "end": {
                      "line": 694,
                      "column": 14
                    }
                  },
                  "name": "object"
                },
                "operator": "instanceof",
                "right": {
                  "type": "Identifier",
                  "start": 27197,
                  "end": 27202,
                  "loc": {
                    "start": {
                      "line": 694,
                      "column": 26
                    },
                    "end": {
                      "line": 694,
                      "column": 31
                    }
                  },
                  "name": "Point"
                }
              },
              "consequent": {
                "type": "BlockStatement",
                "start": 27204,
                "end": 27247,
                "loc": {
                  "start": {
                    "line": 694,
                    "column": 33
                  },
                  "end": {
                    "line": 696,
                    "column": 5
                  }
                },
                "body": [
                  {
                    "type": "ExpressionStatement",
                    "start": 27214,
                    "end": 27241,
                    "loc": {
                      "start": {
                        "line": 695,
                        "column": 8
                      },
                      "end": {
                        "line": 695,
                        "column": 35
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 27214,
                      "end": 27240,
                      "loc": {
                        "start": {
                          "line": 695,
                          "column": 8
                        },
                        "end": {
                          "line": 695,
                          "column": 34
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "Identifier",
                        "start": 27214,
                        "end": 27219,
                        "loc": {
                          "start": {
                            "line": 695,
                            "column": 8
                          },
                          "end": {
                            "line": 695,
                            "column": 13
                          }
                        },
                        "name": "color"
                      },
                      "right": {
                        "type": "MemberExpression",
                        "start": 27222,
                        "end": 27240,
                        "loc": {
                          "start": {
                            "line": 695,
                            "column": 16
                          },
                          "end": {
                            "line": 695,
                            "column": 34
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 27222,
                          "end": 27233,
                          "loc": {
                            "start": {
                              "line": 695,
                              "column": 16
                            },
                            "end": {
                              "line": 695,
                              "column": 27
                            }
                          },
                          "name": "pointColors"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 27234,
                          "end": 27239,
                          "loc": {
                            "start": {
                              "line": 695,
                              "column": 28
                            },
                            "end": {
                              "line": 695,
                              "column": 33
                            }
                          },
                          "name": "index"
                        },
                        "computed": true
                      }
                    }
                  }
                ]
              },
              "alternate": {
                "type": "IfStatement",
                "start": 27253,
                "end": 27471,
                "loc": {
                  "start": {
                    "line": 696,
                    "column": 11
                  },
                  "end": {
                    "line": 702,
                    "column": 5
                  }
                },
                "test": {
                  "type": "BinaryExpression",
                  "start": 27257,
                  "end": 27279,
                  "loc": {
                    "start": {
                      "line": 696,
                      "column": 15
                    },
                    "end": {
                      "line": 696,
                      "column": 37
                    }
                  },
                  "left": {
                    "type": "Identifier",
                    "start": 27257,
                    "end": 27263,
                    "loc": {
                      "start": {
                        "line": 696,
                        "column": 15
                      },
                      "end": {
                        "line": 696,
                        "column": 21
                      }
                    },
                    "name": "object"
                  },
                  "operator": "instanceof",
                  "right": {
                    "type": "Identifier",
                    "start": 27275,
                    "end": 27279,
                    "loc": {
                      "start": {
                        "line": 696,
                        "column": 33
                      },
                      "end": {
                        "line": 696,
                        "column": 37
                      }
                    },
                    "name": "Line"
                  }
                },
                "consequent": {
                  "type": "BlockStatement",
                  "start": 27281,
                  "end": 27323,
                  "loc": {
                    "start": {
                      "line": 696,
                      "column": 39
                    },
                    "end": {
                      "line": 698,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 27291,
                      "end": 27317,
                      "loc": {
                        "start": {
                          "line": 697,
                          "column": 8
                        },
                        "end": {
                          "line": 697,
                          "column": 34
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 27291,
                        "end": 27316,
                        "loc": {
                          "start": {
                            "line": 697,
                            "column": 8
                          },
                          "end": {
                            "line": 697,
                            "column": 33
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 27291,
                          "end": 27296,
                          "loc": {
                            "start": {
                              "line": 697,
                              "column": 8
                            },
                            "end": {
                              "line": 697,
                              "column": 13
                            }
                          },
                          "name": "color"
                        },
                        "right": {
                          "type": "MemberExpression",
                          "start": 27299,
                          "end": 27316,
                          "loc": {
                            "start": {
                              "line": 697,
                              "column": 16
                            },
                            "end": {
                              "line": 697,
                              "column": 33
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 27299,
                            "end": 27309,
                            "loc": {
                              "start": {
                                "line": 697,
                                "column": 16
                              },
                              "end": {
                                "line": 697,
                                "column": 26
                              }
                            },
                            "name": "lineColors"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 27310,
                            "end": 27315,
                            "loc": {
                              "start": {
                                "line": 697,
                                "column": 27
                              },
                              "end": {
                                "line": 697,
                                "column": 32
                              }
                            },
                            "name": "index"
                          },
                          "computed": true
                        }
                      }
                    }
                  ]
                },
                "alternate": {
                  "type": "IfStatement",
                  "start": 27329,
                  "end": 27471,
                  "loc": {
                    "start": {
                      "line": 698,
                      "column": 11
                    },
                    "end": {
                      "line": 702,
                      "column": 5
                    }
                  },
                  "test": {
                    "type": "BinaryExpression",
                    "start": 27333,
                    "end": 27354,
                    "loc": {
                      "start": {
                        "line": 698,
                        "column": 15
                      },
                      "end": {
                        "line": 698,
                        "column": 36
                      }
                    },
                    "left": {
                      "type": "Identifier",
                      "start": 27333,
                      "end": 27339,
                      "loc": {
                        "start": {
                          "line": 698,
                          "column": 15
                        },
                        "end": {
                          "line": 698,
                          "column": 21
                        }
                      },
                      "name": "object"
                    },
                    "operator": "instanceof",
                    "right": {
                      "type": "Identifier",
                      "start": 27351,
                      "end": 27354,
                      "loc": {
                        "start": {
                          "line": 698,
                          "column": 33
                        },
                        "end": {
                          "line": 698,
                          "column": 36
                        }
                      },
                      "name": "Arc"
                    }
                  },
                  "consequent": {
                    "type": "BlockStatement",
                    "start": 27356,
                    "end": 27397,
                    "loc": {
                      "start": {
                        "line": 698,
                        "column": 38
                      },
                      "end": {
                        "line": 700,
                        "column": 5
                      }
                    },
                    "body": [
                      {
                        "type": "ExpressionStatement",
                        "start": 27366,
                        "end": 27391,
                        "loc": {
                          "start": {
                            "line": 699,
                            "column": 8
                          },
                          "end": {
                            "line": 699,
                            "column": 33
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 27366,
                          "end": 27390,
                          "loc": {
                            "start": {
                              "line": 699,
                              "column": 8
                            },
                            "end": {
                              "line": 699,
                              "column": 32
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "Identifier",
                            "start": 27366,
                            "end": 27371,
                            "loc": {
                              "start": {
                                "line": 699,
                                "column": 8
                              },
                              "end": {
                                "line": 699,
                                "column": 13
                              }
                            },
                            "name": "color"
                          },
                          "right": {
                            "type": "MemberExpression",
                            "start": 27374,
                            "end": 27390,
                            "loc": {
                              "start": {
                                "line": 699,
                                "column": 16
                              },
                              "end": {
                                "line": 699,
                                "column": 32
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 27374,
                              "end": 27383,
                              "loc": {
                                "start": {
                                  "line": 699,
                                  "column": 16
                                },
                                "end": {
                                  "line": 699,
                                  "column": 25
                                }
                              },
                              "name": "arcColors"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 27384,
                              "end": 27389,
                              "loc": {
                                "start": {
                                  "line": 699,
                                  "column": 26
                                },
                                "end": {
                                  "line": 699,
                                  "column": 31
                                }
                              },
                              "name": "index"
                            },
                            "computed": true
                          }
                        }
                      }
                    ]
                  },
                  "alternate": {
                    "type": "IfStatement",
                    "start": 27403,
                    "end": 27471,
                    "loc": {
                      "start": {
                        "line": 700,
                        "column": 11
                      },
                      "end": {
                        "line": 702,
                        "column": 5
                      }
                    },
                    "test": {
                      "type": "BinaryExpression",
                      "start": 27407,
                      "end": 27434,
                      "loc": {
                        "start": {
                          "line": 700,
                          "column": 15
                        },
                        "end": {
                          "line": 700,
                          "column": 42
                        }
                      },
                      "left": {
                        "type": "Identifier",
                        "start": 27407,
                        "end": 27413,
                        "loc": {
                          "start": {
                            "line": 700,
                            "column": 15
                          },
                          "end": {
                            "line": 700,
                            "column": 21
                          }
                        },
                        "name": "object"
                      },
                      "operator": "instanceof",
                      "right": {
                        "type": "Identifier",
                        "start": 27425,
                        "end": 27434,
                        "loc": {
                          "start": {
                            "line": 700,
                            "column": 33
                          },
                          "end": {
                            "line": 700,
                            "column": 42
                          }
                        },
                        "name": "WorkPlane"
                      }
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "start": 27436,
                      "end": 27471,
                      "loc": {
                        "start": {
                          "line": 700,
                          "column": 44
                        },
                        "end": {
                          "line": 702,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "ExpressionStatement",
                          "start": 27446,
                          "end": 27465,
                          "loc": {
                            "start": {
                              "line": 701,
                              "column": 8
                            },
                            "end": {
                              "line": 701,
                              "column": 27
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 27446,
                            "end": 27464,
                            "loc": {
                              "start": {
                                "line": 701,
                                "column": 8
                              },
                              "end": {
                                "line": 701,
                                "column": 26
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "Identifier",
                              "start": 27446,
                              "end": 27451,
                              "loc": {
                                "start": {
                                  "line": 701,
                                  "column": 8
                                },
                                "end": {
                                  "line": 701,
                                  "column": 13
                                }
                              },
                              "name": "color"
                            },
                            "right": {
                              "type": "Identifier",
                              "start": 27454,
                              "end": 27464,
                              "loc": {
                                "start": {
                                  "line": 701,
                                  "column": 16
                                },
                                "end": {
                                  "line": 701,
                                  "column": 26
                                }
                              },
                              "name": "planeColor"
                            }
                          }
                        }
                      ]
                    },
                    "alternate": null
                  }
                }
              }
            },
            {
              "type": "ReturnStatement",
              "start": 27476,
              "end": 27489,
              "loc": {
                "start": {
                  "line": 703,
                  "column": 4
                },
                "end": {
                  "line": 703,
                  "column": 17
                }
              },
              "argument": {
                "type": "Identifier",
                "start": 27483,
                "end": 27488,
                "loc": {
                  "start": {
                    "line": 703,
                    "column": 11
                  },
                  "end": {
                    "line": 703,
                    "column": 16
                  }
                },
                "name": "color"
              }
            }
          ],
          "trailingComments": null
        },
        "leadingComments": [
          {
            "type": "CommentLine",
            "value": "==============================    Color set     ==============================",
            "start": 25944,
            "end": 26024,
            "loc": {
              "start": {
                "line": 670,
                "column": 0
              },
              "end": {
                "line": 670,
                "column": 80
              }
            },
            "range": [
              25944,
              26024
            ]
          }
        ],
        "trailingComments": [
          {
            "type": "CommentLine",
            "value": "sizes in pixels (diameter/width)",
            "start": 27493,
            "end": 27527,
            "loc": {
              "start": {
                "line": 706,
                "column": 0
              },
              "end": {
                "line": 706,
                "column": 34
              }
            },
            "range": [
              27493,
              27527
            ]
          }
        ]
      },
      "specifiers": [],
      "source": null,
      "leadingComments": [
        {
          "type": "CommentLine",
          "value": "==============================    Color set     ==============================",
          "start": 25944,
          "end": 26024,
          "loc": {
            "start": {
              "line": 670,
              "column": 0
            },
            "end": {
              "line": 670,
              "column": 80
            }
          },
          "range": [
            25944,
            26024
          ]
        }
      ],
      "trailingComments": [
        {
          "type": "CommentLine",
          "value": "sizes in pixels (diameter/width)",
          "start": 27493,
          "end": 27527,
          "loc": {
            "start": {
              "line": 706,
              "column": 0
            },
            "end": {
              "line": 706,
              "column": 34
            }
          },
          "range": [
            27493,
            27527
          ]
        }
      ]
    },
    {
      "type": "ExpressionStatement",
      "start": 27528,
      "end": 27559,
      "loc": {
        "start": {
          "line": 707,
          "column": 0
        },
        "end": {
          "line": 707,
          "column": 31
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 27528,
        "end": 27558,
        "loc": {
          "start": {
            "line": 707,
            "column": 0
          },
          "end": {
            "line": 707,
            "column": 30
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 27528,
          "end": 27553,
          "loc": {
            "start": {
              "line": 707,
              "column": 0
            },
            "end": {
              "line": 707,
              "column": 25
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 27528,
            "end": 27543,
            "loc": {
              "start": {
                "line": 707,
                "column": 0
              },
              "end": {
                "line": 707,
                "column": 15
              }
            },
            "object": {
              "type": "Identifier",
              "start": 27528,
              "end": 27533,
              "loc": {
                "start": {
                  "line": 707,
                  "column": 0
                },
                "end": {
                  "line": 707,
                  "column": 5
                }
              },
              "name": "Point",
              "leadingComments": null
            },
            "property": {
              "type": "Identifier",
              "start": 27534,
              "end": 27543,
              "loc": {
                "start": {
                  "line": 707,
                  "column": 6
                },
                "end": {
                  "line": 707,
                  "column": 15
                }
              },
              "name": "prototype"
            },
            "computed": false,
            "leadingComments": null
          },
          "property": {
            "type": "Identifier",
            "start": 27544,
            "end": 27553,
            "loc": {
              "start": {
                "line": 707,
                "column": 16
              },
              "end": {
                "line": 707,
                "column": 25
              }
            },
            "name": "thickness"
          },
          "computed": false,
          "leadingComments": null
        },
        "right": {
          "type": "Literal",
          "start": 27556,
          "end": 27558,
          "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": 27493,
          "end": 27527,
          "loc": {
            "start": {
              "line": 706,
              "column": 0
            },
            "end": {
              "line": 706,
              "column": 34
            }
          },
          "range": [
            27493,
            27527
          ]
        }
      ]
    },
    {
      "type": "ExpressionStatement",
      "start": 27560,
      "end": 27589,
      "loc": {
        "start": {
          "line": 708,
          "column": 0
        },
        "end": {
          "line": 708,
          "column": 29
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 27560,
        "end": 27588,
        "loc": {
          "start": {
            "line": 708,
            "column": 0
          },
          "end": {
            "line": 708,
            "column": 28
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 27560,
          "end": 27584,
          "loc": {
            "start": {
              "line": 708,
              "column": 0
            },
            "end": {
              "line": 708,
              "column": 24
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 27560,
            "end": 27574,
            "loc": {
              "start": {
                "line": 708,
                "column": 0
              },
              "end": {
                "line": 708,
                "column": 14
              }
            },
            "object": {
              "type": "Identifier",
              "start": 27560,
              "end": 27564,
              "loc": {
                "start": {
                  "line": 708,
                  "column": 0
                },
                "end": {
                  "line": 708,
                  "column": 4
                }
              },
              "name": "Line"
            },
            "property": {
              "type": "Identifier",
              "start": 27565,
              "end": 27574,
              "loc": {
                "start": {
                  "line": 708,
                  "column": 5
                },
                "end": {
                  "line": 708,
                  "column": 14
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 27575,
            "end": 27584,
            "loc": {
              "start": {
                "line": 708,
                "column": 15
              },
              "end": {
                "line": 708,
                "column": 24
              }
            },
            "name": "thickness"
          },
          "computed": false
        },
        "right": {
          "type": "Literal",
          "start": 27587,
          "end": 27588,
          "loc": {
            "start": {
              "line": 708,
              "column": 27
            },
            "end": {
              "line": 708,
              "column": 28
            }
          },
          "value": 5,
          "rawValue": 5,
          "raw": "5"
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 27590,
      "end": 27618,
      "loc": {
        "start": {
          "line": 709,
          "column": 0
        },
        "end": {
          "line": 709,
          "column": 28
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 27590,
        "end": 27617,
        "loc": {
          "start": {
            "line": 709,
            "column": 0
          },
          "end": {
            "line": 709,
            "column": 27
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 27590,
          "end": 27613,
          "loc": {
            "start": {
              "line": 709,
              "column": 0
            },
            "end": {
              "line": 709,
              "column": 23
            }
          },
          "object": {
            "type": "MemberExpression",
            "start": 27590,
            "end": 27603,
            "loc": {
              "start": {
                "line": 709,
                "column": 0
              },
              "end": {
                "line": 709,
                "column": 13
              }
            },
            "object": {
              "type": "Identifier",
              "start": 27590,
              "end": 27593,
              "loc": {
                "start": {
                  "line": 709,
                  "column": 0
                },
                "end": {
                  "line": 709,
                  "column": 3
                }
              },
              "name": "Arc"
            },
            "property": {
              "type": "Identifier",
              "start": 27594,
              "end": 27603,
              "loc": {
                "start": {
                  "line": 709,
                  "column": 4
                },
                "end": {
                  "line": 709,
                  "column": 13
                }
              },
              "name": "prototype"
            },
            "computed": false
          },
          "property": {
            "type": "Identifier",
            "start": 27604,
            "end": 27613,
            "loc": {
              "start": {
                "line": 709,
                "column": 14
              },
              "end": {
                "line": 709,
                "column": 23
              }
            },
            "name": "thickness"
          },
          "computed": false
        },
        "right": {
          "type": "Literal",
          "start": 27616,
          "end": 27617,
          "loc": {
            "start": {
              "line": 709,
              "column": 26
            },
            "end": {
              "line": 709,
              "column": 27
            }
          },
          "value": 5,
          "rawValue": 5,
          "raw": "5"
        }
      }
    },
    {
      "type": "ExpressionStatement",
      "start": 27619,
      "end": 27659,
      "loc": {
        "start": {
          "line": 710,
          "column": 0
        },
        "end": {
          "line": 710,
          "column": 40
        }
      },
      "expression": {
        "type": "AssignmentExpression",
        "start": 27619,
        "end": 27658,
        "loc": {
          "start": {
            "line": 710,
            "column": 0
          },
          "end": {
            "line": 710,
            "column": 39
          }
        },
        "operator": "=",
        "left": {
          "type": "MemberExpression",
          "start": 27619,
          "end": 27637,
          "loc": {
            "start": {
              "line": 710,
              "column": 0
            },
            "end": {
              "line": 710,
              "column": 18
            }
          },
          "object": {
            "type": "Identifier",
            "start": 27619,
            "end": 27624,
            "loc": {
              "start": {
                "line": 710,
                "column": 0
              },
              "end": {
                "line": 710,
                "column": 5
              }
            },
            "name": "Point"
          },
          "property": {
            "type": "Identifier",
            "start": 27625,
            "end": 27637,
            "loc": {
              "start": {
                "line": 710,
                "column": 6
              },
              "end": {
                "line": 710,
                "column": 18
              }
            },
            "name": "defaultScale"
          },
          "computed": false
        },
        "right": {
          "type": "Literal",
          "start": 27640,
          "end": 27658,
          "loc": {
            "start": {
              "line": 710,
              "column": 21
            },
            "end": {
              "line": 710,
              "column": 39
            }
          },
          "value": 3.2229586226371154,
          "rawValue": 3.2229586226371154,
          "raw": "3.2229586226371154"
        }
      }
    }
  ]
}