{
  "type": "Program",
  "start": 0,
  "end": 15362,
  "loc": {
    "start": {
      "line": 1,
      "column": 0
    },
    "end": {
      "line": 434,
      "column": 0
    }
  },
  "sourceType": "module",
  "body": [
    {
      "type": "ImportDeclaration",
      "start": 0,
      "end": 26,
      "loc": {
        "start": {
          "line": 1,
          "column": 0
        },
        "end": {
          "line": 1,
          "column": 26
        }
      },
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "start": 7,
          "end": 12,
          "loc": {
            "start": {
              "line": 1,
              "column": 7
            },
            "end": {
              "line": 1,
              "column": 12
            }
          },
          "local": {
            "type": "Identifier",
            "start": 7,
            "end": 12,
            "loc": {
              "start": {
                "line": 1,
                "column": 7
              },
              "end": {
                "line": 1,
                "column": 12
              }
            },
            "name": "delay"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 18,
        "end": 25,
        "loc": {
          "start": {
            "line": 1,
            "column": 18
          },
          "end": {
            "line": 1,
            "column": 25
          }
        },
        "value": "delay",
        "rawValue": "delay",
        "raw": "'delay'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 27,
      "end": 53,
      "loc": {
        "start": {
          "line": 2,
          "column": 0
        },
        "end": {
          "line": 2,
          "column": 26
        }
      },
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "start": 34,
          "end": 39,
          "loc": {
            "start": {
              "line": 2,
              "column": 7
            },
            "end": {
              "line": 2,
              "column": 12
            }
          },
          "local": {
            "type": "Identifier",
            "start": 34,
            "end": 39,
            "loc": {
              "start": {
                "line": 2,
                "column": 7
              },
              "end": {
                "line": 2,
                "column": 12
              }
            },
            "name": "THREE"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 45,
        "end": 52,
        "loc": {
          "start": {
            "line": 2,
            "column": 18
          },
          "end": {
            "line": 2,
            "column": 25
          }
        },
        "value": "three",
        "rawValue": "three",
        "raw": "'three'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 54,
      "end": 91,
      "loc": {
        "start": {
          "line": 3,
          "column": 0
        },
        "end": {
          "line": 3,
          "column": 37
        }
      },
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "start": 61,
          "end": 69,
          "loc": {
            "start": {
              "line": 3,
              "column": 7
            },
            "end": {
              "line": 3,
              "column": 15
            }
          },
          "local": {
            "type": "Identifier",
            "start": 61,
            "end": 69,
            "loc": {
              "start": {
                "line": 3,
                "column": 7
              },
              "end": {
                "line": 3,
                "column": 15
              }
            },
            "name": "Object3D"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 75,
        "end": 90,
        "loc": {
          "start": {
            "line": 3,
            "column": 21
          },
          "end": {
            "line": 3,
            "column": 36
          }
        },
        "value": "three/object3",
        "rawValue": "three/object3",
        "raw": "'three/object3'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 92,
      "end": 129,
      "loc": {
        "start": {
          "line": 4,
          "column": 0
        },
        "end": {
          "line": 4,
          "column": 37
        }
      },
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "start": 99,
          "end": 105,
          "loc": {
            "start": {
              "line": 4,
              "column": 7
            },
            "end": {
              "line": 4,
              "column": 13
            }
          },
          "local": {
            "type": "Identifier",
            "start": 99,
            "end": 105,
            "loc": {
              "start": {
                "line": 4,
                "column": 7
              },
              "end": {
                "line": 4,
                "column": 13
              }
            },
            "name": "Sketch"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 111,
        "end": 128,
        "loc": {
          "start": {
            "line": 4,
            "column": 19
          },
          "end": {
            "line": 4,
            "column": 36
          }
        },
        "value": "sketcher/sketch",
        "rawValue": "sketcher/sketch",
        "raw": "'sketcher/sketch'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 130,
      "end": 171,
      "loc": {
        "start": {
          "line": 5,
          "column": 0
        },
        "end": {
          "line": 5,
          "column": 41
        }
      },
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "start": 137,
          "end": 145,
          "loc": {
            "start": {
              "line": 5,
              "column": 7
            },
            "end": {
              "line": 5,
              "column": 15
            }
          },
          "local": {
            "type": "Identifier",
            "start": 137,
            "end": 145,
            "loc": {
              "start": {
                "line": 5,
                "column": 7
              },
              "end": {
                "line": 5,
                "column": 15
              }
            },
            "name": "Sketcher"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 151,
        "end": 170,
        "loc": {
          "start": {
            "line": 5,
            "column": 21
          },
          "end": {
            "line": 5,
            "column": 40
          }
        },
        "value": "sketcher/sketcher",
        "rawValue": "sketcher/sketcher",
        "raw": "'sketcher/sketcher'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 172,
      "end": 274,
      "loc": {
        "start": {
          "line": 6,
          "column": 0
        },
        "end": {
          "line": 8,
          "column": 30
        }
      },
      "specifiers": [
        {
          "type": "ImportSpecifier",
          "start": 185,
          "end": 205,
          "loc": {
            "start": {
              "line": 7,
              "column": 4
            },
            "end": {
              "line": 7,
              "column": 24
            }
          },
          "imported": {
            "type": "Identifier",
            "start": 185,
            "end": 190,
            "loc": {
              "start": {
                "line": 7,
                "column": 4
              },
              "end": {
                "line": 7,
                "column": 9
              }
            },
            "name": "Point"
          },
          "local": {
            "type": "Identifier",
            "start": 194,
            "end": 205,
            "loc": {
              "start": {
                "line": 7,
                "column": 13
              },
              "end": {
                "line": 7,
                "column": 24
              }
            },
            "name": "SketchPoint"
          }
        },
        {
          "type": "ImportSpecifier",
          "start": 207,
          "end": 225,
          "loc": {
            "start": {
              "line": 7,
              "column": 26
            },
            "end": {
              "line": 7,
              "column": 44
            }
          },
          "imported": {
            "type": "Identifier",
            "start": 207,
            "end": 211,
            "loc": {
              "start": {
                "line": 7,
                "column": 26
              },
              "end": {
                "line": 7,
                "column": 30
              }
            },
            "name": "Line"
          },
          "local": {
            "type": "Identifier",
            "start": 215,
            "end": 225,
            "loc": {
              "start": {
                "line": 7,
                "column": 34
              },
              "end": {
                "line": 7,
                "column": 44
              }
            },
            "name": "SketchLine"
          }
        },
        {
          "type": "ImportSpecifier",
          "start": 227,
          "end": 243,
          "loc": {
            "start": {
              "line": 7,
              "column": 46
            },
            "end": {
              "line": 7,
              "column": 62
            }
          },
          "imported": {
            "type": "Identifier",
            "start": 227,
            "end": 230,
            "loc": {
              "start": {
                "line": 7,
                "column": 46
              },
              "end": {
                "line": 7,
                "column": 49
              }
            },
            "name": "Arc"
          },
          "local": {
            "type": "Identifier",
            "start": 234,
            "end": 243,
            "loc": {
              "start": {
                "line": 7,
                "column": 53
              },
              "end": {
                "line": 7,
                "column": 62
              }
            },
            "name": "SketchArc"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 251,
        "end": 273,
        "loc": {
          "start": {
            "line": 8,
            "column": 7
          },
          "end": {
            "line": 8,
            "column": 29
          }
        },
        "value": "sketcher/geomobjects",
        "rawValue": "sketcher/geomobjects",
        "raw": "'sketcher/geomobjects'"
      }
    },
    {
      "type": "ImportDeclaration",
      "start": 275,
      "end": 321,
      "loc": {
        "start": {
          "line": 9,
          "column": 0
        },
        "end": {
          "line": 11,
          "column": 28
        }
      },
      "specifiers": [
        {
          "type": "ImportSpecifier",
          "start": 288,
          "end": 292,
          "loc": {
            "start": {
              "line": 10,
              "column": 4
            },
            "end": {
              "line": 10,
              "column": 8
            }
          },
          "imported": {
            "type": "Identifier",
            "start": 288,
            "end": 292,
            "loc": {
              "start": {
                "line": 10,
                "column": 4
              },
              "end": {
                "line": 10,
                "column": 8
              }
            },
            "name": "Part"
          },
          "local": {
            "type": "Identifier",
            "start": 288,
            "end": 292,
            "loc": {
              "start": {
                "line": 10,
                "column": 4
              },
              "end": {
                "line": 10,
                "column": 8
              }
            },
            "name": "Part"
          }
        }
      ],
      "importKind": "value",
      "source": {
        "type": "Literal",
        "start": 300,
        "end": 320,
        "loc": {
          "start": {
            "line": 11,
            "column": 7
          },
          "end": {
            "line": 11,
            "column": 27
          }
        },
        "value": "sketcher/cchelpers",
        "rawValue": "sketcher/cchelpers",
        "raw": "'sketcher/cchelpers'"
      }
    },
    {
      "type": "FunctionDeclaration",
      "start": 324,
      "end": 406,
      "loc": {
        "start": {
          "line": 14,
          "column": 0
        },
        "end": {
          "line": 17,
          "column": 1
        }
      },
      "id": {
        "type": "Identifier",
        "start": 333,
        "end": 338,
        "loc": {
          "start": {
            "line": 14,
            "column": 9
          },
          "end": {
            "line": 14,
            "column": 14
          }
        },
        "name": "check"
      },
      "generator": false,
      "expression": false,
      "async": false,
      "params": [
        {
          "type": "Identifier",
          "start": 339,
          "end": 343,
          "loc": {
            "start": {
              "line": 14,
              "column": 15
            },
            "end": {
              "line": 14,
              "column": 19
            }
          },
          "name": "cond"
        },
        {
          "type": "Identifier",
          "start": 345,
          "end": 352,
          "loc": {
            "start": {
              "line": 14,
              "column": 21
            },
            "end": {
              "line": 14,
              "column": 28
            }
          },
          "name": "message"
        }
      ],
      "body": {
        "type": "BlockStatement",
        "start": 354,
        "end": 406,
        "loc": {
          "start": {
            "line": 14,
            "column": 30
          },
          "end": {
            "line": 17,
            "column": 1
          }
        },
        "body": [
          {
            "type": "IfStatement",
            "start": 360,
            "end": 404,
            "loc": {
              "start": {
                "line": 15,
                "column": 4
              },
              "end": {
                "line": 16,
                "column": 33
              }
            },
            "test": {
              "type": "UnaryExpression",
              "start": 364,
              "end": 369,
              "loc": {
                "start": {
                  "line": 15,
                  "column": 8
                },
                "end": {
                  "line": 15,
                  "column": 13
                }
              },
              "operator": "!",
              "prefix": true,
              "argument": {
                "type": "Identifier",
                "start": 365,
                "end": 369,
                "loc": {
                  "start": {
                    "line": 15,
                    "column": 9
                  },
                  "end": {
                    "line": 15,
                    "column": 13
                  }
                },
                "name": "cond"
              }
            },
            "consequent": {
              "type": "ThrowStatement",
              "start": 379,
              "end": 404,
              "loc": {
                "start": {
                  "line": 16,
                  "column": 8
                },
                "end": {
                  "line": 16,
                  "column": 33
                }
              },
              "argument": {
                "type": "NewExpression",
                "start": 385,
                "end": 403,
                "loc": {
                  "start": {
                    "line": 16,
                    "column": 14
                  },
                  "end": {
                    "line": 16,
                    "column": 32
                  }
                },
                "callee": {
                  "type": "Identifier",
                  "start": 389,
                  "end": 394,
                  "loc": {
                    "start": {
                      "line": 16,
                      "column": 18
                    },
                    "end": {
                      "line": 16,
                      "column": 23
                    }
                  },
                  "name": "Error"
                },
                "arguments": [
                  {
                    "type": "Identifier",
                    "start": 395,
                    "end": 402,
                    "loc": {
                      "start": {
                        "line": 16,
                        "column": 24
                      },
                      "end": {
                        "line": 16,
                        "column": 31
                      }
                    },
                    "name": "message"
                  }
                ]
              }
            },
            "alternate": null
          }
        ]
      }
    },
    {
      "type": "ClassDeclaration",
      "start": 408,
      "end": 1807,
      "loc": {
        "start": {
          "line": 19,
          "column": 0
        },
        "end": {
          "line": 62,
          "column": 1
        }
      },
      "id": {
        "type": "Identifier",
        "start": 414,
        "end": 430,
        "loc": {
          "start": {
            "line": 19,
            "column": 6
          },
          "end": {
            "line": 19,
            "column": 22
          }
        },
        "name": "AddRemoveTracker"
      },
      "superClass": null,
      "body": {
        "type": "ClassBody",
        "start": 431,
        "end": 1807,
        "loc": {
          "start": {
            "line": 19,
            "column": 23
          },
          "end": {
            "line": 62,
            "column": 1
          }
        },
        "body": [
          {
            "type": "MethodDefinition",
            "start": 437,
            "end": 632,
            "loc": {
              "start": {
                "line": 20,
                "column": 4
              },
              "end": {
                "line": 26,
                "column": 5
              }
            },
            "computed": false,
            "key": {
              "type": "Identifier",
              "start": 437,
              "end": 448,
              "loc": {
                "start": {
                  "line": 20,
                  "column": 4
                },
                "end": {
                  "line": 20,
                  "column": 15
                }
              },
              "name": "constructor"
            },
            "static": false,
            "kind": "constructor",
            "value": {
              "type": "FunctionExpression",
              "start": 448,
              "end": 632,
              "loc": {
                "start": {
                  "line": 20,
                  "column": 15
                },
                "end": {
                  "line": 26,
                  "column": 5
                }
              },
              "id": null,
              "generator": false,
              "expression": false,
              "async": false,
              "params": [
                {
                  "type": "Identifier",
                  "start": 449,
                  "end": 455,
                  "loc": {
                    "start": {
                      "line": 20,
                      "column": 16
                    },
                    "end": {
                      "line": 20,
                      "column": 22
                    }
                  },
                  "name": "sketch"
                }
              ],
              "body": {
                "type": "BlockStatement",
                "start": 457,
                "end": 632,
                "loc": {
                  "start": {
                    "line": 20,
                    "column": 24
                  },
                  "end": {
                    "line": 26,
                    "column": 5
                  }
                },
                "body": [
                  {
                    "type": "ExpressionStatement",
                    "start": 467,
                    "end": 488,
                    "loc": {
                      "start": {
                        "line": 21,
                        "column": 8
                      },
                      "end": {
                        "line": 21,
                        "column": 29
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 467,
                      "end": 487,
                      "loc": {
                        "start": {
                          "line": 21,
                          "column": 8
                        },
                        "end": {
                          "line": 21,
                          "column": 28
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 467,
                        "end": 478,
                        "loc": {
                          "start": {
                            "line": 21,
                            "column": 8
                          },
                          "end": {
                            "line": 21,
                            "column": 19
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 467,
                          "end": 471,
                          "loc": {
                            "start": {
                              "line": 21,
                              "column": 8
                            },
                            "end": {
                              "line": 21,
                              "column": 12
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 472,
                          "end": 478,
                          "loc": {
                            "start": {
                              "line": 21,
                              "column": 13
                            },
                            "end": {
                              "line": 21,
                              "column": 19
                            }
                          },
                          "name": "sketch"
                        },
                        "computed": false
                      },
                      "right": {
                        "type": "Identifier",
                        "start": 481,
                        "end": 487,
                        "loc": {
                          "start": {
                            "line": 21,
                            "column": 22
                          },
                          "end": {
                            "line": 21,
                            "column": 28
                          }
                        },
                        "name": "sketch"
                      }
                    },
                    "trailingComments": [
                      {
                        "type": "CommentLine",
                        "value": "set of listeners installed",
                        "start": 497,
                        "end": 525,
                        "loc": {
                          "start": {
                            "line": 22,
                            "column": 8
                          },
                          "end": {
                            "line": 22,
                            "column": 36
                          }
                        },
                        "range": [
                          497,
                          525
                        ]
                      }
                    ]
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 534,
                    "end": 554,
                    "loc": {
                      "start": {
                        "line": 23,
                        "column": 8
                      },
                      "end": {
                        "line": 23,
                        "column": 28
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 534,
                      "end": 553,
                      "loc": {
                        "start": {
                          "line": 23,
                          "column": 8
                        },
                        "end": {
                          "line": 23,
                          "column": 27
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 534,
                        "end": 548,
                        "loc": {
                          "start": {
                            "line": 23,
                            "column": 8
                          },
                          "end": {
                            "line": 23,
                            "column": 22
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 534,
                          "end": 538,
                          "loc": {
                            "start": {
                              "line": 23,
                              "column": 8
                            },
                            "end": {
                              "line": 23,
                              "column": 12
                            }
                          },
                          "leadingComments": null
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 539,
                          "end": 548,
                          "loc": {
                            "start": {
                              "line": 23,
                              "column": 13
                            },
                            "end": {
                              "line": 23,
                              "column": 22
                            }
                          },
                          "name": "listeners"
                        },
                        "computed": false,
                        "leadingComments": null
                      },
                      "right": {
                        "type": "ObjectExpression",
                        "start": 551,
                        "end": 553,
                        "loc": {
                          "start": {
                            "line": 23,
                            "column": 25
                          },
                          "end": {
                            "line": 23,
                            "column": 27
                          }
                        },
                        "properties": []
                      },
                      "leadingComments": null
                    },
                    "leadingComments": [
                      {
                        "type": "CommentLine",
                        "value": "set of listeners installed",
                        "start": 497,
                        "end": 525,
                        "loc": {
                          "start": {
                            "line": 22,
                            "column": 8
                          },
                          "end": {
                            "line": 22,
                            "column": 36
                          }
                        },
                        "range": [
                          497,
                          525
                        ]
                      }
                    ],
                    "trailingComments": [
                      {
                        "type": "CommentLine",
                        "value": "set of changes done since creation",
                        "start": 563,
                        "end": 599,
                        "loc": {
                          "start": {
                            "line": 24,
                            "column": 8
                          },
                          "end": {
                            "line": 24,
                            "column": 44
                          }
                        },
                        "range": [
                          563,
                          599
                        ]
                      }
                    ]
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 608,
                    "end": 626,
                    "loc": {
                      "start": {
                        "line": 25,
                        "column": 8
                      },
                      "end": {
                        "line": 25,
                        "column": 26
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 608,
                      "end": 625,
                      "loc": {
                        "start": {
                          "line": 25,
                          "column": 8
                        },
                        "end": {
                          "line": 25,
                          "column": 25
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 608,
                        "end": 620,
                        "loc": {
                          "start": {
                            "line": 25,
                            "column": 8
                          },
                          "end": {
                            "line": 25,
                            "column": 20
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 608,
                          "end": 612,
                          "loc": {
                            "start": {
                              "line": 25,
                              "column": 8
                            },
                            "end": {
                              "line": 25,
                              "column": 12
                            }
                          },
                          "leadingComments": null
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 613,
                          "end": 620,
                          "loc": {
                            "start": {
                              "line": 25,
                              "column": 13
                            },
                            "end": {
                              "line": 25,
                              "column": 20
                            }
                          },
                          "name": "changes"
                        },
                        "computed": false,
                        "leadingComments": null
                      },
                      "right": {
                        "type": "ObjectExpression",
                        "start": 623,
                        "end": 625,
                        "loc": {
                          "start": {
                            "line": 25,
                            "column": 23
                          },
                          "end": {
                            "line": 25,
                            "column": 25
                          }
                        },
                        "properties": []
                      },
                      "leadingComments": null
                    },
                    "leadingComments": [
                      {
                        "type": "CommentLine",
                        "value": "set of changes done since creation",
                        "start": 563,
                        "end": 599,
                        "loc": {
                          "start": {
                            "line": 24,
                            "column": 8
                          },
                          "end": {
                            "line": 24,
                            "column": 44
                          }
                        },
                        "range": [
                          563,
                          599
                        ]
                      }
                    ]
                  }
                ]
              }
            }
          },
          {
            "type": "MethodDefinition",
            "start": 638,
            "end": 835,
            "loc": {
              "start": {
                "line": 28,
                "column": 4
              },
              "end": {
                "line": 33,
                "column": 5
              }
            },
            "computed": false,
            "key": {
              "type": "Identifier",
              "start": 638,
              "end": 649,
              "loc": {
                "start": {
                  "line": 28,
                  "column": 4
                },
                "end": {
                  "line": 28,
                  "column": 15
                }
              },
              "name": "markChanged"
            },
            "static": false,
            "kind": "method",
            "value": {
              "type": "FunctionExpression",
              "start": 649,
              "end": 835,
              "loc": {
                "start": {
                  "line": 28,
                  "column": 15
                },
                "end": {
                  "line": 33,
                  "column": 5
                }
              },
              "id": null,
              "generator": false,
              "expression": false,
              "async": false,
              "params": [
                {
                  "type": "Identifier",
                  "start": 650,
                  "end": 653,
                  "loc": {
                    "start": {
                      "line": 28,
                      "column": 16
                    },
                    "end": {
                      "line": 28,
                      "column": 19
                    }
                  },
                  "name": "obj"
                },
                {
                  "type": "Identifier",
                  "start": 655,
                  "end": 659,
                  "loc": {
                    "start": {
                      "line": 28,
                      "column": 21
                    },
                    "end": {
                      "line": 28,
                      "column": 25
                    }
                  },
                  "name": "sign"
                }
              ],
              "body": {
                "type": "BlockStatement",
                "start": 661,
                "end": 835,
                "loc": {
                  "start": {
                    "line": 28,
                    "column": 27
                  },
                  "end": {
                    "line": 33,
                    "column": 5
                  }
                },
                "body": [
                  {
                    "type": "IfStatement",
                    "start": 671,
                    "end": 762,
                    "loc": {
                      "start": {
                        "line": 29,
                        "column": 8
                      },
                      "end": {
                        "line": 30,
                        "column": 60
                      }
                    },
                    "test": {
                      "type": "UnaryExpression",
                      "start": 675,
                      "end": 700,
                      "loc": {
                        "start": {
                          "line": 29,
                          "column": 12
                        },
                        "end": {
                          "line": 29,
                          "column": 37
                        }
                      },
                      "operator": "!",
                      "prefix": true,
                      "argument": {
                        "type": "BinaryExpression",
                        "start": 677,
                        "end": 699,
                        "loc": {
                          "start": {
                            "line": 29,
                            "column": 14
                          },
                          "end": {
                            "line": 29,
                            "column": 36
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 677,
                          "end": 683,
                          "loc": {
                            "start": {
                              "line": 29,
                              "column": 14
                            },
                            "end": {
                              "line": 29,
                              "column": 20
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 677,
                            "end": 680,
                            "loc": {
                              "start": {
                                "line": 29,
                                "column": 14
                              },
                              "end": {
                                "line": 29,
                                "column": 17
                              }
                            },
                            "name": "obj"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 681,
                            "end": 683,
                            "loc": {
                              "start": {
                                "line": 29,
                                "column": 18
                              },
                              "end": {
                                "line": 29,
                                "column": 20
                              }
                            },
                            "name": "id"
                          },
                          "computed": false
                        },
                        "operator": "in",
                        "right": {
                          "type": "MemberExpression",
                          "start": 687,
                          "end": 699,
                          "loc": {
                            "start": {
                              "line": 29,
                              "column": 24
                            },
                            "end": {
                              "line": 29,
                              "column": 36
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 687,
                            "end": 691,
                            "loc": {
                              "start": {
                                "line": 29,
                                "column": 24
                              },
                              "end": {
                                "line": 29,
                                "column": 28
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 692,
                            "end": 699,
                            "loc": {
                              "start": {
                                "line": 29,
                                "column": 29
                              },
                              "end": {
                                "line": 29,
                                "column": 36
                              }
                            },
                            "name": "changes"
                          },
                          "computed": false
                        },
                        "parenthesizedExpression": true
                      }
                    },
                    "consequent": {
                      "type": "ExpressionStatement",
                      "start": 714,
                      "end": 762,
                      "loc": {
                        "start": {
                          "line": 30,
                          "column": 12
                        },
                        "end": {
                          "line": 30,
                          "column": 60
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 714,
                        "end": 761,
                        "loc": {
                          "start": {
                            "line": 30,
                            "column": 12
                          },
                          "end": {
                            "line": 30,
                            "column": 59
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 714,
                          "end": 734,
                          "loc": {
                            "start": {
                              "line": 30,
                              "column": 12
                            },
                            "end": {
                              "line": 30,
                              "column": 32
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 714,
                            "end": 726,
                            "loc": {
                              "start": {
                                "line": 30,
                                "column": 12
                              },
                              "end": {
                                "line": 30,
                                "column": 24
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 714,
                              "end": 718,
                              "loc": {
                                "start": {
                                  "line": 30,
                                  "column": 12
                                },
                                "end": {
                                  "line": 30,
                                  "column": 16
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 719,
                              "end": 726,
                              "loc": {
                                "start": {
                                  "line": 30,
                                  "column": 17
                                },
                                "end": {
                                  "line": 30,
                                  "column": 24
                                }
                              },
                              "name": "changes"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "MemberExpression",
                            "start": 727,
                            "end": 733,
                            "loc": {
                              "start": {
                                "line": 30,
                                "column": 25
                              },
                              "end": {
                                "line": 30,
                                "column": 31
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 727,
                              "end": 730,
                              "loc": {
                                "start": {
                                  "line": 30,
                                  "column": 25
                                },
                                "end": {
                                  "line": 30,
                                  "column": 28
                                }
                              },
                              "name": "obj"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 731,
                              "end": 733,
                              "loc": {
                                "start": {
                                  "line": 30,
                                  "column": 29
                                },
                                "end": {
                                  "line": 30,
                                  "column": 31
                                }
                              },
                              "name": "id"
                            },
                            "computed": false
                          },
                          "computed": true
                        },
                        "right": {
                          "type": "ObjectExpression",
                          "start": 737,
                          "end": 761,
                          "loc": {
                            "start": {
                              "line": 30,
                              "column": 35
                            },
                            "end": {
                              "line": 30,
                              "column": 59
                            }
                          },
                          "properties": [
                            {
                              "type": "Property",
                              "start": 738,
                              "end": 749,
                              "loc": {
                                "start": {
                                  "line": 30,
                                  "column": 36
                                },
                                "end": {
                                  "line": 30,
                                  "column": 47
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 738,
                                "end": 744,
                                "loc": {
                                  "start": {
                                    "line": 30,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 30,
                                    "column": 42
                                  }
                                },
                                "name": "object"
                              },
                              "value": {
                                "type": "Identifier",
                                "start": 746,
                                "end": 749,
                                "loc": {
                                  "start": {
                                    "line": 30,
                                    "column": 44
                                  },
                                  "end": {
                                    "line": 30,
                                    "column": 47
                                  }
                                },
                                "name": "obj"
                              },
                              "kind": "init"
                            },
                            {
                              "type": "Property",
                              "start": 751,
                              "end": 760,
                              "loc": {
                                "start": {
                                  "line": 30,
                                  "column": 49
                                },
                                "end": {
                                  "line": 30,
                                  "column": 58
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 751,
                                "end": 757,
                                "loc": {
                                  "start": {
                                    "line": 30,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 30,
                                    "column": 55
                                  }
                                },
                                "name": "status"
                              },
                              "value": {
                                "type": "Literal",
                                "start": 759,
                                "end": 760,
                                "loc": {
                                  "start": {
                                    "line": 30,
                                    "column": 57
                                  },
                                  "end": {
                                    "line": 30,
                                    "column": 58
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0"
                              },
                              "kind": "init"
                            }
                          ]
                        }
                      }
                    },
                    "alternate": null
                  },
                  {
                    "type": "IfStatement",
                    "start": 771,
                    "end": 829,
                    "loc": {
                      "start": {
                        "line": 31,
                        "column": 8
                      },
                      "end": {
                        "line": 32,
                        "column": 48
                      }
                    },
                    "test": {
                      "type": "Identifier",
                      "start": 775,
                      "end": 779,
                      "loc": {
                        "start": {
                          "line": 31,
                          "column": 12
                        },
                        "end": {
                          "line": 31,
                          "column": 16
                        }
                      },
                      "name": "sign"
                    },
                    "consequent": {
                      "type": "ExpressionStatement",
                      "start": 793,
                      "end": 829,
                      "loc": {
                        "start": {
                          "line": 32,
                          "column": 12
                        },
                        "end": {
                          "line": 32,
                          "column": 48
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 793,
                        "end": 828,
                        "loc": {
                          "start": {
                            "line": 32,
                            "column": 12
                          },
                          "end": {
                            "line": 32,
                            "column": 47
                          }
                        },
                        "operator": "+=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 793,
                          "end": 820,
                          "loc": {
                            "start": {
                              "line": 32,
                              "column": 12
                            },
                            "end": {
                              "line": 32,
                              "column": 39
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 793,
                            "end": 813,
                            "loc": {
                              "start": {
                                "line": 32,
                                "column": 12
                              },
                              "end": {
                                "line": 32,
                                "column": 32
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 793,
                              "end": 805,
                              "loc": {
                                "start": {
                                  "line": 32,
                                  "column": 12
                                },
                                "end": {
                                  "line": 32,
                                  "column": 24
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 793,
                                "end": 797,
                                "loc": {
                                  "start": {
                                    "line": 32,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 32,
                                    "column": 16
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 798,
                                "end": 805,
                                "loc": {
                                  "start": {
                                    "line": 32,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 32,
                                    "column": 24
                                  }
                                },
                                "name": "changes"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "MemberExpression",
                              "start": 806,
                              "end": 812,
                              "loc": {
                                "start": {
                                  "line": 32,
                                  "column": 25
                                },
                                "end": {
                                  "line": 32,
                                  "column": 31
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 806,
                                "end": 809,
                                "loc": {
                                  "start": {
                                    "line": 32,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 32,
                                    "column": 28
                                  }
                                },
                                "name": "obj"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 810,
                                "end": 812,
                                "loc": {
                                  "start": {
                                    "line": 32,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 32,
                                    "column": 31
                                  }
                                },
                                "name": "id"
                              },
                              "computed": false
                            },
                            "computed": true
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 814,
                            "end": 820,
                            "loc": {
                              "start": {
                                "line": 32,
                                "column": 33
                              },
                              "end": {
                                "line": 32,
                                "column": 39
                              }
                            },
                            "name": "status"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Identifier",
                          "start": 824,
                          "end": 828,
                          "loc": {
                            "start": {
                              "line": 32,
                              "column": 43
                            },
                            "end": {
                              "line": 32,
                              "column": 47
                            }
                          },
                          "name": "sign"
                        }
                      }
                    },
                    "alternate": null
                  }
                ]
              }
            }
          },
          {
            "type": "MethodDefinition",
            "start": 840,
            "end": 1182,
            "loc": {
              "start": {
                "line": 34,
                "column": 4
              },
              "end": {
                "line": 41,
                "column": 5
              }
            },
            "computed": false,
            "key": {
              "type": "Identifier",
              "start": 840,
              "end": 846,
              "loc": {
                "start": {
                  "line": 34,
                  "column": 4
                },
                "end": {
                  "line": 34,
                  "column": 10
                }
              },
              "name": "listen"
            },
            "static": false,
            "kind": "method",
            "value": {
              "type": "FunctionExpression",
              "start": 846,
              "end": 1182,
              "loc": {
                "start": {
                  "line": 34,
                  "column": 10
                },
                "end": {
                  "line": 41,
                  "column": 5
                }
              },
              "id": null,
              "generator": false,
              "expression": false,
              "async": false,
              "params": [],
              "body": {
                "type": "BlockStatement",
                "start": 849,
                "end": 1182,
                "loc": {
                  "start": {
                    "line": 34,
                    "column": 13
                  },
                  "end": {
                    "line": 41,
                    "column": 5
                  }
                },
                "body": [
                  {
                    "type": "VariableDeclaration",
                    "start": 859,
                    "end": 910,
                    "loc": {
                      "start": {
                        "line": 35,
                        "column": 8
                      },
                      "end": {
                        "line": 35,
                        "column": 59
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 863,
                        "end": 909,
                        "loc": {
                          "start": {
                            "line": 35,
                            "column": 12
                          },
                          "end": {
                            "line": 35,
                            "column": 58
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 863,
                          "end": 872,
                          "loc": {
                            "start": {
                              "line": 35,
                              "column": 12
                            },
                            "end": {
                              "line": 35,
                              "column": 21
                            }
                          },
                          "name": "listenerP"
                        },
                        "init": {
                          "type": "ArrowFunctionExpression",
                          "start": 875,
                          "end": 909,
                          "loc": {
                            "start": {
                              "line": 35,
                              "column": 24
                            },
                            "end": {
                              "line": 35,
                              "column": 58
                            }
                          },
                          "id": null,
                          "generator": false,
                          "expression": true,
                          "async": false,
                          "params": [
                            {
                              "type": "Identifier",
                              "start": 876,
                              "end": 879,
                              "loc": {
                                "start": {
                                  "line": 35,
                                  "column": 25
                                },
                                "end": {
                                  "line": 35,
                                  "column": 28
                                }
                              },
                              "name": "obj"
                            }
                          ],
                          "body": {
                            "type": "CallExpression",
                            "start": 884,
                            "end": 909,
                            "loc": {
                              "start": {
                                "line": 35,
                                "column": 33
                              },
                              "end": {
                                "line": 35,
                                "column": 58
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 884,
                              "end": 900,
                              "loc": {
                                "start": {
                                  "line": 35,
                                  "column": 33
                                },
                                "end": {
                                  "line": 35,
                                  "column": 49
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 884,
                                "end": 888,
                                "loc": {
                                  "start": {
                                    "line": 35,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 35,
                                    "column": 37
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 889,
                                "end": 900,
                                "loc": {
                                  "start": {
                                    "line": 35,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 35,
                                    "column": 49
                                  }
                                },
                                "name": "markChanged"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 901,
                                "end": 904,
                                "loc": {
                                  "start": {
                                    "line": 35,
                                    "column": 50
                                  },
                                  "end": {
                                    "line": 35,
                                    "column": 53
                                  }
                                },
                                "name": "obj"
                              },
                              {
                                "type": "UnaryExpression",
                                "start": 906,
                                "end": 908,
                                "loc": {
                                  "start": {
                                    "line": 35,
                                    "column": 55
                                  },
                                  "end": {
                                    "line": 35,
                                    "column": 57
                                  }
                                },
                                "operator": "+",
                                "prefix": true,
                                "argument": {
                                  "type": "Literal",
                                  "start": 907,
                                  "end": 908,
                                  "loc": {
                                    "start": {
                                      "line": 35,
                                      "column": 56
                                    },
                                    "end": {
                                      "line": 35,
                                      "column": 57
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                }
                              }
                            ]
                          }
                        }
                      }
                    ],
                    "kind": "let"
                  },
                  {
                    "type": "VariableDeclaration",
                    "start": 919,
                    "end": 970,
                    "loc": {
                      "start": {
                        "line": 36,
                        "column": 8
                      },
                      "end": {
                        "line": 36,
                        "column": 59
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 923,
                        "end": 969,
                        "loc": {
                          "start": {
                            "line": 36,
                            "column": 12
                          },
                          "end": {
                            "line": 36,
                            "column": 58
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 923,
                          "end": 932,
                          "loc": {
                            "start": {
                              "line": 36,
                              "column": 12
                            },
                            "end": {
                              "line": 36,
                              "column": 21
                            }
                          },
                          "name": "listenerM"
                        },
                        "init": {
                          "type": "ArrowFunctionExpression",
                          "start": 935,
                          "end": 969,
                          "loc": {
                            "start": {
                              "line": 36,
                              "column": 24
                            },
                            "end": {
                              "line": 36,
                              "column": 58
                            }
                          },
                          "id": null,
                          "generator": false,
                          "expression": true,
                          "async": false,
                          "params": [
                            {
                              "type": "Identifier",
                              "start": 936,
                              "end": 939,
                              "loc": {
                                "start": {
                                  "line": 36,
                                  "column": 25
                                },
                                "end": {
                                  "line": 36,
                                  "column": 28
                                }
                              },
                              "name": "obj"
                            }
                          ],
                          "body": {
                            "type": "CallExpression",
                            "start": 944,
                            "end": 969,
                            "loc": {
                              "start": {
                                "line": 36,
                                "column": 33
                              },
                              "end": {
                                "line": 36,
                                "column": 58
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 944,
                              "end": 960,
                              "loc": {
                                "start": {
                                  "line": 36,
                                  "column": 33
                                },
                                "end": {
                                  "line": 36,
                                  "column": 49
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 944,
                                "end": 948,
                                "loc": {
                                  "start": {
                                    "line": 36,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 36,
                                    "column": 37
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 949,
                                "end": 960,
                                "loc": {
                                  "start": {
                                    "line": 36,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 36,
                                    "column": 49
                                  }
                                },
                                "name": "markChanged"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 961,
                                "end": 964,
                                "loc": {
                                  "start": {
                                    "line": 36,
                                    "column": 50
                                  },
                                  "end": {
                                    "line": 36,
                                    "column": 53
                                  }
                                },
                                "name": "obj"
                              },
                              {
                                "type": "UnaryExpression",
                                "start": 966,
                                "end": 968,
                                "loc": {
                                  "start": {
                                    "line": 36,
                                    "column": 55
                                  },
                                  "end": {
                                    "line": 36,
                                    "column": 57
                                  }
                                },
                                "operator": "-",
                                "prefix": true,
                                "argument": {
                                  "type": "Literal",
                                  "start": 967,
                                  "end": 968,
                                  "loc": {
                                    "start": {
                                      "line": 36,
                                      "column": 56
                                    },
                                    "end": {
                                      "line": 36,
                                      "column": 57
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                }
                              }
                            ]
                          }
                        }
                      }
                    ],
                    "kind": "let"
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 979,
                    "end": 1020,
                    "loc": {
                      "start": {
                        "line": 37,
                        "column": 8
                      },
                      "end": {
                        "line": 37,
                        "column": 49
                      }
                    },
                    "expression": {
                      "type": "CallExpression",
                      "start": 979,
                      "end": 1019,
                      "loc": {
                        "start": {
                          "line": 37,
                          "column": 8
                        },
                        "end": {
                          "line": 37,
                          "column": 48
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 979,
                        "end": 993,
                        "loc": {
                          "start": {
                            "line": 37,
                            "column": 8
                          },
                          "end": {
                            "line": 37,
                            "column": 22
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 979,
                          "end": 990,
                          "loc": {
                            "start": {
                              "line": 37,
                              "column": 8
                            },
                            "end": {
                              "line": 37,
                              "column": 19
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 979,
                            "end": 983,
                            "loc": {
                              "start": {
                                "line": 37,
                                "column": 8
                              },
                              "end": {
                                "line": 37,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 984,
                            "end": 990,
                            "loc": {
                              "start": {
                                "line": 37,
                                "column": 13
                              },
                              "end": {
                                "line": 37,
                                "column": 19
                              }
                            },
                            "name": "sketch"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 991,
                          "end": 993,
                          "loc": {
                            "start": {
                              "line": 37,
                              "column": 20
                            },
                            "end": {
                              "line": 37,
                              "column": 22
                            }
                          },
                          "name": "on"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "Literal",
                          "start": 994,
                          "end": 1007,
                          "loc": {
                            "start": {
                              "line": 37,
                              "column": 23
                            },
                            "end": {
                              "line": 37,
                              "column": 36
                            }
                          },
                          "value": "SketchAdded",
                          "rawValue": "SketchAdded",
                          "raw": "'SketchAdded'"
                        },
                        {
                          "type": "Identifier",
                          "start": 1009,
                          "end": 1018,
                          "loc": {
                            "start": {
                              "line": 37,
                              "column": 38
                            },
                            "end": {
                              "line": 37,
                              "column": 47
                            }
                          },
                          "name": "listenerP"
                        }
                      ]
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 1029,
                    "end": 1072,
                    "loc": {
                      "start": {
                        "line": 38,
                        "column": 8
                      },
                      "end": {
                        "line": 38,
                        "column": 51
                      }
                    },
                    "expression": {
                      "type": "CallExpression",
                      "start": 1029,
                      "end": 1071,
                      "loc": {
                        "start": {
                          "line": 38,
                          "column": 8
                        },
                        "end": {
                          "line": 38,
                          "column": 50
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 1029,
                        "end": 1043,
                        "loc": {
                          "start": {
                            "line": 38,
                            "column": 8
                          },
                          "end": {
                            "line": 38,
                            "column": 22
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 1029,
                          "end": 1040,
                          "loc": {
                            "start": {
                              "line": 38,
                              "column": 8
                            },
                            "end": {
                              "line": 38,
                              "column": 19
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 1029,
                            "end": 1033,
                            "loc": {
                              "start": {
                                "line": 38,
                                "column": 8
                              },
                              "end": {
                                "line": 38,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1034,
                            "end": 1040,
                            "loc": {
                              "start": {
                                "line": 38,
                                "column": 13
                              },
                              "end": {
                                "line": 38,
                                "column": 19
                              }
                            },
                            "name": "sketch"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 1041,
                          "end": 1043,
                          "loc": {
                            "start": {
                              "line": 38,
                              "column": 20
                            },
                            "end": {
                              "line": 38,
                              "column": 22
                            }
                          },
                          "name": "on"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "Literal",
                          "start": 1044,
                          "end": 1059,
                          "loc": {
                            "start": {
                              "line": 38,
                              "column": 23
                            },
                            "end": {
                              "line": 38,
                              "column": 38
                            }
                          },
                          "value": "SketchRemoved",
                          "rawValue": "SketchRemoved",
                          "raw": "'SketchRemoved'"
                        },
                        {
                          "type": "Identifier",
                          "start": 1061,
                          "end": 1070,
                          "loc": {
                            "start": {
                              "line": 38,
                              "column": 40
                            },
                            "end": {
                              "line": 38,
                              "column": 49
                            }
                          },
                          "name": "listenerM"
                        }
                      ]
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 1081,
                    "end": 1123,
                    "loc": {
                      "start": {
                        "line": 39,
                        "column": 8
                      },
                      "end": {
                        "line": 39,
                        "column": 50
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 1081,
                      "end": 1122,
                      "loc": {
                        "start": {
                          "line": 39,
                          "column": 8
                        },
                        "end": {
                          "line": 39,
                          "column": 49
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 1081,
                        "end": 1110,
                        "loc": {
                          "start": {
                            "line": 39,
                            "column": 8
                          },
                          "end": {
                            "line": 39,
                            "column": 37
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 1081,
                          "end": 1095,
                          "loc": {
                            "start": {
                              "line": 39,
                              "column": 8
                            },
                            "end": {
                              "line": 39,
                              "column": 22
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 1081,
                            "end": 1085,
                            "loc": {
                              "start": {
                                "line": 39,
                                "column": 8
                              },
                              "end": {
                                "line": 39,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1086,
                            "end": 1095,
                            "loc": {
                              "start": {
                                "line": 39,
                                "column": 13
                              },
                              "end": {
                                "line": 39,
                                "column": 22
                              }
                            },
                            "name": "listeners"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Literal",
                          "start": 1096,
                          "end": 1109,
                          "loc": {
                            "start": {
                              "line": 39,
                              "column": 23
                            },
                            "end": {
                              "line": 39,
                              "column": 36
                            }
                          },
                          "value": "SketchAdded",
                          "rawValue": "SketchAdded",
                          "raw": "'SketchAdded'"
                        },
                        "computed": true
                      },
                      "right": {
                        "type": "Identifier",
                        "start": 1113,
                        "end": 1122,
                        "loc": {
                          "start": {
                            "line": 39,
                            "column": 40
                          },
                          "end": {
                            "line": 39,
                            "column": 49
                          }
                        },
                        "name": "listenerP"
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 1132,
                    "end": 1176,
                    "loc": {
                      "start": {
                        "line": 40,
                        "column": 8
                      },
                      "end": {
                        "line": 40,
                        "column": 52
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 1132,
                      "end": 1175,
                      "loc": {
                        "start": {
                          "line": 40,
                          "column": 8
                        },
                        "end": {
                          "line": 40,
                          "column": 51
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 1132,
                        "end": 1163,
                        "loc": {
                          "start": {
                            "line": 40,
                            "column": 8
                          },
                          "end": {
                            "line": 40,
                            "column": 39
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 1132,
                          "end": 1146,
                          "loc": {
                            "start": {
                              "line": 40,
                              "column": 8
                            },
                            "end": {
                              "line": 40,
                              "column": 22
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 1132,
                            "end": 1136,
                            "loc": {
                              "start": {
                                "line": 40,
                                "column": 8
                              },
                              "end": {
                                "line": 40,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1137,
                            "end": 1146,
                            "loc": {
                              "start": {
                                "line": 40,
                                "column": 13
                              },
                              "end": {
                                "line": 40,
                                "column": 22
                              }
                            },
                            "name": "listeners"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Literal",
                          "start": 1147,
                          "end": 1162,
                          "loc": {
                            "start": {
                              "line": 40,
                              "column": 23
                            },
                            "end": {
                              "line": 40,
                              "column": 38
                            }
                          },
                          "value": "SketchRemoved",
                          "rawValue": "SketchRemoved",
                          "raw": "'SketchRemoved'"
                        },
                        "computed": true
                      },
                      "right": {
                        "type": "Identifier",
                        "start": 1166,
                        "end": 1175,
                        "loc": {
                          "start": {
                            "line": 40,
                            "column": 42
                          },
                          "end": {
                            "line": 40,
                            "column": 51
                          }
                        },
                        "name": "listenerM"
                      }
                    }
                  }
                ]
              }
            }
          },
          {
            "type": "MethodDefinition",
            "start": 1187,
            "end": 1371,
            "loc": {
              "start": {
                "line": 42,
                "column": 4
              },
              "end": {
                "line": 45,
                "column": 5
              }
            },
            "computed": false,
            "key": {
              "type": "Identifier",
              "start": 1187,
              "end": 1193,
              "loc": {
                "start": {
                  "line": 42,
                  "column": 4
                },
                "end": {
                  "line": 42,
                  "column": 10
                }
              },
              "name": "ignore"
            },
            "static": false,
            "kind": "method",
            "value": {
              "type": "FunctionExpression",
              "start": 1193,
              "end": 1371,
              "loc": {
                "start": {
                  "line": 42,
                  "column": 10
                },
                "end": {
                  "line": 45,
                  "column": 5
                }
              },
              "id": null,
              "generator": false,
              "expression": false,
              "async": false,
              "params": [],
              "body": {
                "type": "BlockStatement",
                "start": 1196,
                "end": 1371,
                "loc": {
                  "start": {
                    "line": 42,
                    "column": 13
                  },
                  "end": {
                    "line": 45,
                    "column": 5
                  }
                },
                "body": [
                  {
                    "type": "ExpressionStatement",
                    "start": 1206,
                    "end": 1279,
                    "loc": {
                      "start": {
                        "line": 43,
                        "column": 8
                      },
                      "end": {
                        "line": 43,
                        "column": 81
                      }
                    },
                    "expression": {
                      "type": "CallExpression",
                      "start": 1206,
                      "end": 1278,
                      "loc": {
                        "start": {
                          "line": 43,
                          "column": 8
                        },
                        "end": {
                          "line": 43,
                          "column": 80
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 1206,
                        "end": 1232,
                        "loc": {
                          "start": {
                            "line": 43,
                            "column": 8
                          },
                          "end": {
                            "line": 43,
                            "column": 34
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 1206,
                          "end": 1217,
                          "loc": {
                            "start": {
                              "line": 43,
                              "column": 8
                            },
                            "end": {
                              "line": 43,
                              "column": 19
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 1206,
                            "end": 1210,
                            "loc": {
                              "start": {
                                "line": 43,
                                "column": 8
                              },
                              "end": {
                                "line": 43,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1211,
                            "end": 1217,
                            "loc": {
                              "start": {
                                "line": 43,
                                "column": 13
                              },
                              "end": {
                                "line": 43,
                                "column": 19
                              }
                            },
                            "name": "sketch"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 1218,
                          "end": 1232,
                          "loc": {
                            "start": {
                              "line": 43,
                              "column": 20
                            },
                            "end": {
                              "line": 43,
                              "column": 34
                            }
                          },
                          "name": "removeListener"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "Literal",
                          "start": 1233,
                          "end": 1246,
                          "loc": {
                            "start": {
                              "line": 43,
                              "column": 35
                            },
                            "end": {
                              "line": 43,
                              "column": 48
                            }
                          },
                          "value": "SketchAdded",
                          "rawValue": "SketchAdded",
                          "raw": "'SketchAdded'"
                        },
                        {
                          "type": "MemberExpression",
                          "start": 1248,
                          "end": 1277,
                          "loc": {
                            "start": {
                              "line": 43,
                              "column": 50
                            },
                            "end": {
                              "line": 43,
                              "column": 79
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 1248,
                            "end": 1262,
                            "loc": {
                              "start": {
                                "line": 43,
                                "column": 50
                              },
                              "end": {
                                "line": 43,
                                "column": 64
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 1248,
                              "end": 1252,
                              "loc": {
                                "start": {
                                  "line": 43,
                                  "column": 50
                                },
                                "end": {
                                  "line": 43,
                                  "column": 54
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 1253,
                              "end": 1262,
                              "loc": {
                                "start": {
                                  "line": 43,
                                  "column": 55
                                },
                                "end": {
                                  "line": 43,
                                  "column": 64
                                }
                              },
                              "name": "listeners"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Literal",
                            "start": 1263,
                            "end": 1276,
                            "loc": {
                              "start": {
                                "line": 43,
                                "column": 65
                              },
                              "end": {
                                "line": 43,
                                "column": 78
                              }
                            },
                            "value": "SketchAdded",
                            "rawValue": "SketchAdded",
                            "raw": "'SketchAdded'"
                          },
                          "computed": true
                        }
                      ]
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 1288,
                    "end": 1365,
                    "loc": {
                      "start": {
                        "line": 44,
                        "column": 8
                      },
                      "end": {
                        "line": 44,
                        "column": 85
                      }
                    },
                    "expression": {
                      "type": "CallExpression",
                      "start": 1288,
                      "end": 1364,
                      "loc": {
                        "start": {
                          "line": 44,
                          "column": 8
                        },
                        "end": {
                          "line": 44,
                          "column": 84
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 1288,
                        "end": 1314,
                        "loc": {
                          "start": {
                            "line": 44,
                            "column": 8
                          },
                          "end": {
                            "line": 44,
                            "column": 34
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 1288,
                          "end": 1299,
                          "loc": {
                            "start": {
                              "line": 44,
                              "column": 8
                            },
                            "end": {
                              "line": 44,
                              "column": 19
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 1288,
                            "end": 1292,
                            "loc": {
                              "start": {
                                "line": 44,
                                "column": 8
                              },
                              "end": {
                                "line": 44,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1293,
                            "end": 1299,
                            "loc": {
                              "start": {
                                "line": 44,
                                "column": 13
                              },
                              "end": {
                                "line": 44,
                                "column": 19
                              }
                            },
                            "name": "sketch"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 1300,
                          "end": 1314,
                          "loc": {
                            "start": {
                              "line": 44,
                              "column": 20
                            },
                            "end": {
                              "line": 44,
                              "column": 34
                            }
                          },
                          "name": "removeListener"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "Literal",
                          "start": 1315,
                          "end": 1330,
                          "loc": {
                            "start": {
                              "line": 44,
                              "column": 35
                            },
                            "end": {
                              "line": 44,
                              "column": 50
                            }
                          },
                          "value": "SketchRemoved",
                          "rawValue": "SketchRemoved",
                          "raw": "'SketchRemoved'"
                        },
                        {
                          "type": "MemberExpression",
                          "start": 1332,
                          "end": 1363,
                          "loc": {
                            "start": {
                              "line": 44,
                              "column": 52
                            },
                            "end": {
                              "line": 44,
                              "column": 83
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 1332,
                            "end": 1346,
                            "loc": {
                              "start": {
                                "line": 44,
                                "column": 52
                              },
                              "end": {
                                "line": 44,
                                "column": 66
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 1332,
                              "end": 1336,
                              "loc": {
                                "start": {
                                  "line": 44,
                                  "column": 52
                                },
                                "end": {
                                  "line": 44,
                                  "column": 56
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 1337,
                              "end": 1346,
                              "loc": {
                                "start": {
                                  "line": 44,
                                  "column": 57
                                },
                                "end": {
                                  "line": 44,
                                  "column": 66
                                }
                              },
                              "name": "listeners"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Literal",
                            "start": 1347,
                            "end": 1362,
                            "loc": {
                              "start": {
                                "line": 44,
                                "column": 67
                              },
                              "end": {
                                "line": 44,
                                "column": 82
                              }
                            },
                            "value": "SketchRemoved",
                            "rawValue": "SketchRemoved",
                            "raw": "'SketchRemoved'"
                          },
                          "computed": true
                        }
                      ]
                    }
                  }
                ]
              }
            }
          },
          {
            "type": "MethodDefinition",
            "start": 1377,
            "end": 1805,
            "loc": {
              "start": {
                "line": 47,
                "column": 4
              },
              "end": {
                "line": 61,
                "column": 5
              }
            },
            "computed": false,
            "key": {
              "type": "Identifier",
              "start": 1377,
              "end": 1390,
              "loc": {
                "start": {
                  "line": 47,
                  "column": 4
                },
                "end": {
                  "line": 47,
                  "column": 17
                }
              },
              "name": "getAllChanges"
            },
            "static": false,
            "kind": "method",
            "value": {
              "type": "FunctionExpression",
              "start": 1390,
              "end": 1805,
              "loc": {
                "start": {
                  "line": 47,
                  "column": 17
                },
                "end": {
                  "line": 61,
                  "column": 5
                }
              },
              "id": null,
              "generator": false,
              "expression": false,
              "async": false,
              "params": [],
              "body": {
                "type": "BlockStatement",
                "start": 1393,
                "end": 1805,
                "loc": {
                  "start": {
                    "line": 47,
                    "column": 20
                  },
                  "end": {
                    "line": 61,
                    "column": 5
                  }
                },
                "body": [
                  {
                    "type": "VariableDeclaration",
                    "start": 1403,
                    "end": 1501,
                    "loc": {
                      "start": {
                        "line": 48,
                        "column": 8
                      },
                      "end": {
                        "line": 52,
                        "column": 10
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 1407,
                        "end": 1500,
                        "loc": {
                          "start": {
                            "line": 48,
                            "column": 12
                          },
                          "end": {
                            "line": 52,
                            "column": 9
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 1407,
                          "end": 1413,
                          "loc": {
                            "start": {
                              "line": 48,
                              "column": 12
                            },
                            "end": {
                              "line": 48,
                              "column": 18
                            }
                          },
                          "name": "result"
                        },
                        "init": {
                          "type": "ObjectExpression",
                          "start": 1416,
                          "end": 1500,
                          "loc": {
                            "start": {
                              "line": 48,
                              "column": 21
                            },
                            "end": {
                              "line": 52,
                              "column": 9
                            }
                          },
                          "properties": [
                            {
                              "type": "Property",
                              "start": 1430,
                              "end": 1439,
                              "loc": {
                                "start": {
                                  "line": 49,
                                  "column": 12
                                },
                                "end": {
                                  "line": 49,
                                  "column": 21
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 1430,
                                "end": 1435,
                                "loc": {
                                  "start": {
                                    "line": 49,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 49,
                                    "column": 17
                                  }
                                },
                                "name": "added"
                              },
                              "value": {
                                "type": "ArrayExpression",
                                "start": 1437,
                                "end": 1439,
                                "loc": {
                                  "start": {
                                    "line": 49,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 49,
                                    "column": 21
                                  }
                                },
                                "elements": []
                              },
                              "kind": "init"
                            },
                            {
                              "type": "Property",
                              "start": 1453,
                              "end": 1464,
                              "loc": {
                                "start": {
                                  "line": 50,
                                  "column": 12
                                },
                                "end": {
                                  "line": 50,
                                  "column": 23
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 1453,
                                "end": 1460,
                                "loc": {
                                  "start": {
                                    "line": 50,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 50,
                                    "column": 19
                                  }
                                },
                                "name": "removed"
                              },
                              "value": {
                                "type": "ArrayExpression",
                                "start": 1462,
                                "end": 1464,
                                "loc": {
                                  "start": {
                                    "line": 50,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 50,
                                    "column": 23
                                  }
                                },
                                "elements": []
                              },
                              "kind": "init"
                            },
                            {
                              "type": "Property",
                              "start": 1478,
                              "end": 1489,
                              "loc": {
                                "start": {
                                  "line": 51,
                                  "column": 12
                                },
                                "end": {
                                  "line": 51,
                                  "column": 23
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 1478,
                                "end": 1485,
                                "loc": {
                                  "start": {
                                    "line": 51,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 51,
                                    "column": 19
                                  }
                                },
                                "name": "changed"
                              },
                              "value": {
                                "type": "ArrayExpression",
                                "start": 1487,
                                "end": 1489,
                                "loc": {
                                  "start": {
                                    "line": 51,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 51,
                                    "column": 23
                                  }
                                },
                                "elements": []
                              },
                              "kind": "init"
                            }
                          ]
                        }
                      }
                    ],
                    "kind": "let"
                  },
                  {
                    "type": "ForInStatement",
                    "start": 1510,
                    "end": 1776,
                    "loc": {
                      "start": {
                        "line": 53,
                        "column": 8
                      },
                      "end": {
                        "line": 59,
                        "column": 9
                      }
                    },
                    "left": {
                      "type": "VariableDeclaration",
                      "start": 1515,
                      "end": 1521,
                      "loc": {
                        "start": {
                          "line": 53,
                          "column": 13
                        },
                        "end": {
                          "line": 53,
                          "column": 19
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 1519,
                          "end": 1521,
                          "loc": {
                            "start": {
                              "line": 53,
                              "column": 17
                            },
                            "end": {
                              "line": 53,
                              "column": 19
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 1519,
                            "end": 1521,
                            "loc": {
                              "start": {
                                "line": 53,
                                "column": 17
                              },
                              "end": {
                                "line": 53,
                                "column": 19
                              }
                            },
                            "name": "id"
                          },
                          "init": null
                        }
                      ],
                      "kind": "let"
                    },
                    "right": {
                      "type": "MemberExpression",
                      "start": 1525,
                      "end": 1537,
                      "loc": {
                        "start": {
                          "line": 53,
                          "column": 23
                        },
                        "end": {
                          "line": 53,
                          "column": 35
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 1525,
                        "end": 1529,
                        "loc": {
                          "start": {
                            "line": 53,
                            "column": 23
                          },
                          "end": {
                            "line": 53,
                            "column": 27
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 1530,
                        "end": 1537,
                        "loc": {
                          "start": {
                            "line": 53,
                            "column": 28
                          },
                          "end": {
                            "line": 53,
                            "column": 35
                          }
                        },
                        "name": "changes"
                      },
                      "computed": false
                    },
                    "body": {
                      "type": "BlockStatement",
                      "start": 1539,
                      "end": 1776,
                      "loc": {
                        "start": {
                          "line": 53,
                          "column": 37
                        },
                        "end": {
                          "line": 59,
                          "column": 9
                        }
                      },
                      "body": [
                        {
                          "type": "VariableDeclaration",
                          "start": 1553,
                          "end": 1581,
                          "loc": {
                            "start": {
                              "line": 54,
                              "column": 12
                            },
                            "end": {
                              "line": 54,
                              "column": 40
                            }
                          },
                          "declarations": [
                            {
                              "type": "VariableDeclarator",
                              "start": 1557,
                              "end": 1580,
                              "loc": {
                                "start": {
                                  "line": 54,
                                  "column": 16
                                },
                                "end": {
                                  "line": 54,
                                  "column": 39
                                }
                              },
                              "id": {
                                "type": "Identifier",
                                "start": 1557,
                                "end": 1561,
                                "loc": {
                                  "start": {
                                    "line": 54,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 54,
                                    "column": 20
                                  }
                                },
                                "name": "info"
                              },
                              "init": {
                                "type": "MemberExpression",
                                "start": 1564,
                                "end": 1580,
                                "loc": {
                                  "start": {
                                    "line": 54,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 54,
                                    "column": 39
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 1564,
                                  "end": 1576,
                                  "loc": {
                                    "start": {
                                      "line": 54,
                                      "column": 23
                                    },
                                    "end": {
                                      "line": 54,
                                      "column": 35
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 1564,
                                    "end": 1568,
                                    "loc": {
                                      "start": {
                                        "line": 54,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 54,
                                        "column": 27
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 1569,
                                    "end": 1576,
                                    "loc": {
                                      "start": {
                                        "line": 54,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 54,
                                        "column": 35
                                      }
                                    },
                                    "name": "changes"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 1577,
                                  "end": 1579,
                                  "loc": {
                                    "start": {
                                      "line": 54,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 54,
                                      "column": 38
                                    }
                                  },
                                  "name": "id"
                                },
                                "computed": true
                              }
                            }
                          ],
                          "kind": "let"
                        },
                        {
                          "type": "VariableDeclaration",
                          "start": 1594,
                          "end": 1620,
                          "loc": {
                            "start": {
                              "line": 55,
                              "column": 12
                            },
                            "end": {
                              "line": 55,
                              "column": 38
                            }
                          },
                          "declarations": [
                            {
                              "type": "VariableDeclarator",
                              "start": 1598,
                              "end": 1619,
                              "loc": {
                                "start": {
                                  "line": 55,
                                  "column": 16
                                },
                                "end": {
                                  "line": 55,
                                  "column": 37
                                }
                              },
                              "id": {
                                "type": "Identifier",
                                "start": 1598,
                                "end": 1602,
                                "loc": {
                                  "start": {
                                    "line": 55,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 55,
                                    "column": 20
                                  }
                                },
                                "name": "list"
                              },
                              "init": {
                                "type": "MemberExpression",
                                "start": 1605,
                                "end": 1619,
                                "loc": {
                                  "start": {
                                    "line": 55,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 55,
                                    "column": 37
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 1605,
                                  "end": 1611,
                                  "loc": {
                                    "start": {
                                      "line": 55,
                                      "column": 23
                                    },
                                    "end": {
                                      "line": 55,
                                      "column": 29
                                    }
                                  },
                                  "name": "result"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 1612,
                                  "end": 1619,
                                  "loc": {
                                    "start": {
                                      "line": 55,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 55,
                                      "column": 37
                                    }
                                  },
                                  "name": "changed"
                                },
                                "computed": false
                              }
                            }
                          ],
                          "kind": "let"
                        },
                        {
                          "type": "IfStatement",
                          "start": 1633,
                          "end": 1674,
                          "loc": {
                            "start": {
                              "line": 56,
                              "column": 12
                            },
                            "end": {
                              "line": 56,
                              "column": 53
                            }
                          },
                          "test": {
                            "type": "BinaryExpression",
                            "start": 1637,
                            "end": 1652,
                            "loc": {
                              "start": {
                                "line": 56,
                                "column": 16
                              },
                              "end": {
                                "line": 56,
                                "column": 31
                              }
                            },
                            "left": {
                              "type": "MemberExpression",
                              "start": 1637,
                              "end": 1648,
                              "loc": {
                                "start": {
                                  "line": 56,
                                  "column": 16
                                },
                                "end": {
                                  "line": 56,
                                  "column": 27
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 1637,
                                "end": 1641,
                                "loc": {
                                  "start": {
                                    "line": 56,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 56,
                                    "column": 20
                                  }
                                },
                                "name": "info"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 1642,
                                "end": 1648,
                                "loc": {
                                  "start": {
                                    "line": 56,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 56,
                                    "column": 27
                                  }
                                },
                                "name": "status"
                              },
                              "computed": false
                            },
                            "operator": ">",
                            "right": {
                              "type": "Literal",
                              "start": 1651,
                              "end": 1652,
                              "loc": {
                                "start": {
                                  "line": 56,
                                  "column": 30
                                },
                                "end": {
                                  "line": 56,
                                  "column": 31
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            }
                          },
                          "consequent": {
                            "type": "ExpressionStatement",
                            "start": 1654,
                            "end": 1674,
                            "loc": {
                              "start": {
                                "line": 56,
                                "column": 33
                              },
                              "end": {
                                "line": 56,
                                "column": 53
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 1654,
                              "end": 1673,
                              "loc": {
                                "start": {
                                  "line": 56,
                                  "column": 33
                                },
                                "end": {
                                  "line": 56,
                                  "column": 52
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "Identifier",
                                "start": 1654,
                                "end": 1658,
                                "loc": {
                                  "start": {
                                    "line": 56,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 56,
                                    "column": 37
                                  }
                                },
                                "name": "list"
                              },
                              "right": {
                                "type": "MemberExpression",
                                "start": 1661,
                                "end": 1673,
                                "loc": {
                                  "start": {
                                    "line": 56,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 56,
                                    "column": 52
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 1661,
                                  "end": 1667,
                                  "loc": {
                                    "start": {
                                      "line": 56,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 56,
                                      "column": 46
                                    }
                                  },
                                  "name": "result"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 1668,
                                  "end": 1673,
                                  "loc": {
                                    "start": {
                                      "line": 56,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 56,
                                      "column": 52
                                    }
                                  },
                                  "name": "added"
                                },
                                "computed": false
                              }
                            }
                          },
                          "alternate": null
                        },
                        {
                          "type": "IfStatement",
                          "start": 1687,
                          "end": 1730,
                          "loc": {
                            "start": {
                              "line": 57,
                              "column": 12
                            },
                            "end": {
                              "line": 57,
                              "column": 55
                            }
                          },
                          "test": {
                            "type": "BinaryExpression",
                            "start": 1691,
                            "end": 1706,
                            "loc": {
                              "start": {
                                "line": 57,
                                "column": 16
                              },
                              "end": {
                                "line": 57,
                                "column": 31
                              }
                            },
                            "left": {
                              "type": "MemberExpression",
                              "start": 1691,
                              "end": 1702,
                              "loc": {
                                "start": {
                                  "line": 57,
                                  "column": 16
                                },
                                "end": {
                                  "line": 57,
                                  "column": 27
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 1691,
                                "end": 1695,
                                "loc": {
                                  "start": {
                                    "line": 57,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 57,
                                    "column": 20
                                  }
                                },
                                "name": "info"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 1696,
                                "end": 1702,
                                "loc": {
                                  "start": {
                                    "line": 57,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 57,
                                    "column": 27
                                  }
                                },
                                "name": "status"
                              },
                              "computed": false
                            },
                            "operator": "<",
                            "right": {
                              "type": "Literal",
                              "start": 1705,
                              "end": 1706,
                              "loc": {
                                "start": {
                                  "line": 57,
                                  "column": 30
                                },
                                "end": {
                                  "line": 57,
                                  "column": 31
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            }
                          },
                          "consequent": {
                            "type": "ExpressionStatement",
                            "start": 1708,
                            "end": 1730,
                            "loc": {
                              "start": {
                                "line": 57,
                                "column": 33
                              },
                              "end": {
                                "line": 57,
                                "column": 55
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 1708,
                              "end": 1729,
                              "loc": {
                                "start": {
                                  "line": 57,
                                  "column": 33
                                },
                                "end": {
                                  "line": 57,
                                  "column": 54
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "Identifier",
                                "start": 1708,
                                "end": 1712,
                                "loc": {
                                  "start": {
                                    "line": 57,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 57,
                                    "column": 37
                                  }
                                },
                                "name": "list"
                              },
                              "right": {
                                "type": "MemberExpression",
                                "start": 1715,
                                "end": 1729,
                                "loc": {
                                  "start": {
                                    "line": 57,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 57,
                                    "column": 54
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 1715,
                                  "end": 1721,
                                  "loc": {
                                    "start": {
                                      "line": 57,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 57,
                                      "column": 46
                                    }
                                  },
                                  "name": "result"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 1722,
                                  "end": 1729,
                                  "loc": {
                                    "start": {
                                      "line": 57,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 57,
                                      "column": 54
                                    }
                                  },
                                  "name": "removed"
                                },
                                "computed": false
                              }
                            }
                          },
                          "alternate": null
                        },
                        {
                          "type": "ExpressionStatement",
                          "start": 1743,
                          "end": 1766,
                          "loc": {
                            "start": {
                              "line": 58,
                              "column": 12
                            },
                            "end": {
                              "line": 58,
                              "column": 35
                            }
                          },
                          "expression": {
                            "type": "CallExpression",
                            "start": 1743,
                            "end": 1765,
                            "loc": {
                              "start": {
                                "line": 58,
                                "column": 12
                              },
                              "end": {
                                "line": 58,
                                "column": 34
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 1743,
                              "end": 1752,
                              "loc": {
                                "start": {
                                  "line": 58,
                                  "column": 12
                                },
                                "end": {
                                  "line": 58,
                                  "column": 21
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 1743,
                                "end": 1747,
                                "loc": {
                                  "start": {
                                    "line": 58,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 58,
                                    "column": 16
                                  }
                                },
                                "name": "list"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 1748,
                                "end": 1752,
                                "loc": {
                                  "start": {
                                    "line": 58,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 58,
                                    "column": 21
                                  }
                                },
                                "name": "push"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 1753,
                                "end": 1764,
                                "loc": {
                                  "start": {
                                    "line": 58,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 58,
                                    "column": 33
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 1753,
                                  "end": 1757,
                                  "loc": {
                                    "start": {
                                      "line": 58,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 58,
                                      "column": 26
                                    }
                                  },
                                  "name": "info"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 1758,
                                  "end": 1764,
                                  "loc": {
                                    "start": {
                                      "line": 58,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 58,
                                      "column": 33
                                    }
                                  },
                                  "name": "object"
                                },
                                "computed": false
                              }
                            ]
                          }
                        }
                      ]
                    }
                  },
                  {
                    "type": "ReturnStatement",
                    "start": 1785,
                    "end": 1799,
                    "loc": {
                      "start": {
                        "line": 60,
                        "column": 8
                      },
                      "end": {
                        "line": 60,
                        "column": 22
                      }
                    },
                    "argument": {
                      "type": "Identifier",
                      "start": 1792,
                      "end": 1798,
                      "loc": {
                        "start": {
                          "line": 60,
                          "column": 15
                        },
                        "end": {
                          "line": 60,
                          "column": 21
                        }
                      },
                      "name": "result"
                    }
                  }
                ]
              }
            }
          }
        ]
      }
    },
    {
      "type": "ClassDeclaration",
      "start": 1809,
      "end": 2346,
      "loc": {
        "start": {
          "line": 64,
          "column": 0
        },
        "end": {
          "line": 83,
          "column": 1
        }
      },
      "id": {
        "type": "Identifier",
        "start": 1815,
        "end": 1827,
        "loc": {
          "start": {
            "line": 64,
            "column": 6
          },
          "end": {
            "line": 64,
            "column": 18
          }
        },
        "name": "ChangesArray"
      },
      "superClass": {
        "type": "Identifier",
        "start": 1836,
        "end": 1841,
        "loc": {
          "start": {
            "line": 64,
            "column": 27
          },
          "end": {
            "line": 64,
            "column": 32
          }
        },
        "name": "Array"
      },
      "body": {
        "type": "ClassBody",
        "start": 1842,
        "end": 2346,
        "loc": {
          "start": {
            "line": 64,
            "column": 33
          },
          "end": {
            "line": 83,
            "column": 1
          }
        },
        "body": [
          {
            "type": "MethodDefinition",
            "start": 1848,
            "end": 1930,
            "loc": {
              "start": {
                "line": 65,
                "column": 4
              },
              "end": {
                "line": 68,
                "column": 5
              }
            },
            "computed": false,
            "key": {
              "type": "Identifier",
              "start": 1848,
              "end": 1859,
              "loc": {
                "start": {
                  "line": 65,
                  "column": 4
                },
                "end": {
                  "line": 65,
                  "column": 15
                }
              },
              "name": "constructor"
            },
            "static": false,
            "kind": "constructor",
            "value": {
              "type": "FunctionExpression",
              "start": 1859,
              "end": 1930,
              "loc": {
                "start": {
                  "line": 65,
                  "column": 15
                },
                "end": {
                  "line": 68,
                  "column": 5
                }
              },
              "id": null,
              "generator": false,
              "expression": false,
              "async": false,
              "params": [
                {
                  "type": "Identifier",
                  "start": 1860,
                  "end": 1863,
                  "loc": {
                    "start": {
                      "line": 65,
                      "column": 16
                    },
                    "end": {
                      "line": 65,
                      "column": 19
                    }
                  },
                  "name": "arr"
                },
                {
                  "type": "Identifier",
                  "start": 1865,
                  "end": 1870,
                  "loc": {
                    "start": {
                      "line": 65,
                      "column": 21
                    },
                    "end": {
                      "line": 65,
                      "column": 26
                    }
                  },
                  "name": "label"
                }
              ],
              "body": {
                "type": "BlockStatement",
                "start": 1872,
                "end": 1930,
                "loc": {
                  "start": {
                    "line": 65,
                    "column": 28
                  },
                  "end": {
                    "line": 68,
                    "column": 5
                  }
                },
                "body": [
                  {
                    "type": "ExpressionStatement",
                    "start": 1882,
                    "end": 1896,
                    "loc": {
                      "start": {
                        "line": 66,
                        "column": 8
                      },
                      "end": {
                        "line": 66,
                        "column": 22
                      }
                    },
                    "expression": {
                      "type": "CallExpression",
                      "start": 1882,
                      "end": 1895,
                      "loc": {
                        "start": {
                          "line": 66,
                          "column": 8
                        },
                        "end": {
                          "line": 66,
                          "column": 21
                        }
                      },
                      "callee": {
                        "type": "Super",
                        "start": 1882,
                        "end": 1887,
                        "loc": {
                          "start": {
                            "line": 66,
                            "column": 8
                          },
                          "end": {
                            "line": 66,
                            "column": 13
                          }
                        }
                      },
                      "arguments": [
                        {
                          "type": "SpreadElement",
                          "start": 1888,
                          "end": 1894,
                          "loc": {
                            "start": {
                              "line": 66,
                              "column": 14
                            },
                            "end": {
                              "line": 66,
                              "column": 20
                            }
                          },
                          "argument": {
                            "type": "Identifier",
                            "start": 1891,
                            "end": 1894,
                            "loc": {
                              "start": {
                                "line": 66,
                                "column": 17
                              },
                              "end": {
                                "line": 66,
                                "column": 20
                              }
                            },
                            "name": "arr"
                          }
                        }
                      ]
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 1905,
                    "end": 1924,
                    "loc": {
                      "start": {
                        "line": 67,
                        "column": 8
                      },
                      "end": {
                        "line": 67,
                        "column": 27
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 1905,
                      "end": 1923,
                      "loc": {
                        "start": {
                          "line": 67,
                          "column": 8
                        },
                        "end": {
                          "line": 67,
                          "column": 26
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 1905,
                        "end": 1915,
                        "loc": {
                          "start": {
                            "line": 67,
                            "column": 8
                          },
                          "end": {
                            "line": 67,
                            "column": 18
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 1905,
                          "end": 1909,
                          "loc": {
                            "start": {
                              "line": 67,
                              "column": 8
                            },
                            "end": {
                              "line": 67,
                              "column": 12
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 1910,
                          "end": 1915,
                          "loc": {
                            "start": {
                              "line": 67,
                              "column": 13
                            },
                            "end": {
                              "line": 67,
                              "column": 18
                            }
                          },
                          "name": "label"
                        },
                        "computed": false
                      },
                      "right": {
                        "type": "Identifier",
                        "start": 1918,
                        "end": 1923,
                        "loc": {
                          "start": {
                            "line": 67,
                            "column": 21
                          },
                          "end": {
                            "line": 67,
                            "column": 26
                          }
                        },
                        "name": "label"
                      }
                    }
                  }
                ]
              }
            }
          },
          {
            "type": "MethodDefinition",
            "start": 1935,
            "end": 2054,
            "loc": {
              "start": {
                "line": 69,
                "column": 4
              },
              "end": {
                "line": 72,
                "column": 5
              }
            },
            "computed": false,
            "key": {
              "type": "Identifier",
              "start": 1935,
              "end": 1941,
              "loc": {
                "start": {
                  "line": 69,
                  "column": 4
                },
                "end": {
                  "line": 69,
                  "column": 10
                }
              },
              "name": "single"
            },
            "static": false,
            "kind": "method",
            "value": {
              "type": "FunctionExpression",
              "start": 1941,
              "end": 2054,
              "loc": {
                "start": {
                  "line": 69,
                  "column": 10
                },
                "end": {
                  "line": 72,
                  "column": 5
                }
              },
              "id": null,
              "generator": false,
              "expression": false,
              "async": false,
              "params": [],
              "body": {
                "type": "BlockStatement",
                "start": 1944,
                "end": 2054,
                "loc": {
                  "start": {
                    "line": 69,
                    "column": 13
                  },
                  "end": {
                    "line": 72,
                    "column": 5
                  }
                },
                "body": [
                  {
                    "type": "ExpressionStatement",
                    "start": 1954,
                    "end": 2024,
                    "loc": {
                      "start": {
                        "line": 70,
                        "column": 8
                      },
                      "end": {
                        "line": 70,
                        "column": 78
                      }
                    },
                    "expression": {
                      "type": "CallExpression",
                      "start": 1954,
                      "end": 2023,
                      "loc": {
                        "start": {
                          "line": 70,
                          "column": 8
                        },
                        "end": {
                          "line": 70,
                          "column": 77
                        }
                      },
                      "callee": {
                        "type": "Identifier",
                        "start": 1954,
                        "end": 1959,
                        "loc": {
                          "start": {
                            "line": 70,
                            "column": 8
                          },
                          "end": {
                            "line": 70,
                            "column": 13
                          }
                        },
                        "name": "check"
                      },
                      "arguments": [
                        {
                          "type": "BinaryExpression",
                          "start": 1960,
                          "end": 1977,
                          "loc": {
                            "start": {
                              "line": 70,
                              "column": 14
                            },
                            "end": {
                              "line": 70,
                              "column": 31
                            }
                          },
                          "left": {
                            "type": "MemberExpression",
                            "start": 1960,
                            "end": 1971,
                            "loc": {
                              "start": {
                                "line": 70,
                                "column": 14
                              },
                              "end": {
                                "line": 70,
                                "column": 25
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 1960,
                              "end": 1964,
                              "loc": {
                                "start": {
                                  "line": 70,
                                  "column": 14
                                },
                                "end": {
                                  "line": 70,
                                  "column": 18
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 1965,
                              "end": 1971,
                              "loc": {
                                "start": {
                                  "line": 70,
                                  "column": 19
                                },
                                "end": {
                                  "line": 70,
                                  "column": 25
                                }
                              },
                              "name": "length"
                            },
                            "computed": false
                          },
                          "operator": "===",
                          "right": {
                            "type": "Literal",
                            "start": 1976,
                            "end": 1977,
                            "loc": {
                              "start": {
                                "line": 70,
                                "column": 30
                              },
                              "end": {
                                "line": 70,
                                "column": 31
                              }
                            },
                            "value": 1,
                            "rawValue": 1,
                            "raw": "1"
                          }
                        },
                        {
                          "type": "BinaryExpression",
                          "start": 1979,
                          "end": 2022,
                          "loc": {
                            "start": {
                              "line": 70,
                              "column": 33
                            },
                            "end": {
                              "line": 70,
                              "column": 76
                            }
                          },
                          "left": {
                            "type": "BinaryExpression",
                            "start": 1979,
                            "end": 2010,
                            "loc": {
                              "start": {
                                "line": 70,
                                "column": 33
                              },
                              "end": {
                                "line": 70,
                                "column": 64
                              }
                            },
                            "left": {
                              "type": "Literal",
                              "start": 1979,
                              "end": 1997,
                              "loc": {
                                "start": {
                                  "line": 70,
                                  "column": 33
                                },
                                "end": {
                                  "line": 70,
                                  "column": 51
                                }
                              },
                              "value": "Expected single ",
                              "rawValue": "Expected single ",
                              "raw": "\"Expected single \""
                            },
                            "operator": "+",
                            "right": {
                              "type": "MemberExpression",
                              "start": 2000,
                              "end": 2010,
                              "loc": {
                                "start": {
                                  "line": 70,
                                  "column": 54
                                },
                                "end": {
                                  "line": 70,
                                  "column": 64
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 2000,
                                "end": 2004,
                                "loc": {
                                  "start": {
                                    "line": 70,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 70,
                                    "column": 58
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 2005,
                                "end": 2010,
                                "loc": {
                                  "start": {
                                    "line": 70,
                                    "column": 59
                                  },
                                  "end": {
                                    "line": 70,
                                    "column": 64
                                  }
                                },
                                "name": "label"
                              },
                              "computed": false
                            }
                          },
                          "operator": "+",
                          "right": {
                            "type": "Literal",
                            "start": 2013,
                            "end": 2022,
                            "loc": {
                              "start": {
                                "line": 70,
                                "column": 67
                              },
                              "end": {
                                "line": 70,
                                "column": 76
                              }
                            },
                            "value": " object",
                            "rawValue": " object",
                            "raw": "\" object\""
                          }
                        }
                      ]
                    }
                  },
                  {
                    "type": "ReturnStatement",
                    "start": 2033,
                    "end": 2048,
                    "loc": {
                      "start": {
                        "line": 71,
                        "column": 8
                      },
                      "end": {
                        "line": 71,
                        "column": 23
                      }
                    },
                    "argument": {
                      "type": "MemberExpression",
                      "start": 2040,
                      "end": 2047,
                      "loc": {
                        "start": {
                          "line": 71,
                          "column": 15
                        },
                        "end": {
                          "line": 71,
                          "column": 22
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 2040,
                        "end": 2044,
                        "loc": {
                          "start": {
                            "line": 71,
                            "column": 15
                          },
                          "end": {
                            "line": 71,
                            "column": 19
                          }
                        }
                      },
                      "property": {
                        "type": "Literal",
                        "start": 2045,
                        "end": 2046,
                        "loc": {
                          "start": {
                            "line": 71,
                            "column": 20
                          },
                          "end": {
                            "line": 71,
                            "column": 21
                          }
                        },
                        "value": 0,
                        "rawValue": 0,
                        "raw": "0"
                      },
                      "computed": true
                    }
                  }
                ]
              }
            }
          },
          {
            "type": "MethodDefinition",
            "start": 2059,
            "end": 2258,
            "loc": {
              "start": {
                "line": 73,
                "column": 4
              },
              "end": {
                "line": 79,
                "column": 5
              }
            },
            "computed": false,
            "key": {
              "type": "Identifier",
              "start": 2059,
              "end": 2065,
              "loc": {
                "start": {
                  "line": 73,
                  "column": 4
                },
                "end": {
                  "line": 73,
                  "column": 10
                }
              },
              "name": "ofType"
            },
            "static": false,
            "kind": "method",
            "value": {
              "type": "FunctionExpression",
              "start": 2065,
              "end": 2258,
              "loc": {
                "start": {
                  "line": 73,
                  "column": 10
                },
                "end": {
                  "line": 79,
                  "column": 5
                }
              },
              "id": null,
              "generator": false,
              "expression": false,
              "async": false,
              "params": [
                {
                  "type": "Identifier",
                  "start": 2066,
                  "end": 2070,
                  "loc": {
                    "start": {
                      "line": 73,
                      "column": 11
                    },
                    "end": {
                      "line": 73,
                      "column": 15
                    }
                  },
                  "name": "type"
                }
              ],
              "body": {
                "type": "BlockStatement",
                "start": 2072,
                "end": 2258,
                "loc": {
                  "start": {
                    "line": 73,
                    "column": 17
                  },
                  "end": {
                    "line": 79,
                    "column": 5
                  }
                },
                "body": [
                  {
                    "type": "VariableDeclaration",
                    "start": 2082,
                    "end": 2098,
                    "loc": {
                      "start": {
                        "line": 74,
                        "column": 8
                      },
                      "end": {
                        "line": 74,
                        "column": 24
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 2086,
                        "end": 2097,
                        "loc": {
                          "start": {
                            "line": 74,
                            "column": 12
                          },
                          "end": {
                            "line": 74,
                            "column": 23
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 2086,
                          "end": 2092,
                          "loc": {
                            "start": {
                              "line": 74,
                              "column": 12
                            },
                            "end": {
                              "line": 74,
                              "column": 18
                            }
                          },
                          "name": "newArr"
                        },
                        "init": {
                          "type": "ArrayExpression",
                          "start": 2095,
                          "end": 2097,
                          "loc": {
                            "start": {
                              "line": 74,
                              "column": 21
                            },
                            "end": {
                              "line": 74,
                              "column": 23
                            }
                          },
                          "elements": []
                        }
                      }
                    ],
                    "kind": "let"
                  },
                  {
                    "type": "ForOfStatement",
                    "start": 2107,
                    "end": 2199,
                    "loc": {
                      "start": {
                        "line": 75,
                        "column": 8
                      },
                      "end": {
                        "line": 77,
                        "column": 33
                      }
                    },
                    "left": {
                      "type": "VariableDeclaration",
                      "start": 2112,
                      "end": 2119,
                      "loc": {
                        "start": {
                          "line": 75,
                          "column": 13
                        },
                        "end": {
                          "line": 75,
                          "column": 20
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 2116,
                          "end": 2119,
                          "loc": {
                            "start": {
                              "line": 75,
                              "column": 17
                            },
                            "end": {
                              "line": 75,
                              "column": 20
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 2116,
                            "end": 2119,
                            "loc": {
                              "start": {
                                "line": 75,
                                "column": 17
                              },
                              "end": {
                                "line": 75,
                                "column": 20
                              }
                            },
                            "name": "obj"
                          },
                          "init": null
                        }
                      ],
                      "kind": "let"
                    },
                    "right": {
                      "type": "ThisExpression",
                      "start": 2123,
                      "end": 2127,
                      "loc": {
                        "start": {
                          "line": 75,
                          "column": 24
                        },
                        "end": {
                          "line": 75,
                          "column": 28
                        }
                      }
                    },
                    "body": {
                      "type": "IfStatement",
                      "start": 2141,
                      "end": 2199,
                      "loc": {
                        "start": {
                          "line": 76,
                          "column": 12
                        },
                        "end": {
                          "line": 77,
                          "column": 33
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 2145,
                        "end": 2164,
                        "loc": {
                          "start": {
                            "line": 76,
                            "column": 16
                          },
                          "end": {
                            "line": 76,
                            "column": 35
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 2145,
                          "end": 2148,
                          "loc": {
                            "start": {
                              "line": 76,
                              "column": 16
                            },
                            "end": {
                              "line": 76,
                              "column": 19
                            }
                          },
                          "name": "obj"
                        },
                        "operator": "instanceof",
                        "right": {
                          "type": "Identifier",
                          "start": 2160,
                          "end": 2164,
                          "loc": {
                            "start": {
                              "line": 76,
                              "column": 31
                            },
                            "end": {
                              "line": 76,
                              "column": 35
                            }
                          },
                          "name": "type"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 2182,
                        "end": 2199,
                        "loc": {
                          "start": {
                            "line": 77,
                            "column": 16
                          },
                          "end": {
                            "line": 77,
                            "column": 33
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 2182,
                          "end": 2198,
                          "loc": {
                            "start": {
                              "line": 77,
                              "column": 16
                            },
                            "end": {
                              "line": 77,
                              "column": 32
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 2182,
                            "end": 2193,
                            "loc": {
                              "start": {
                                "line": 77,
                                "column": 16
                              },
                              "end": {
                                "line": 77,
                                "column": 27
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 2182,
                              "end": 2188,
                              "loc": {
                                "start": {
                                  "line": 77,
                                  "column": 16
                                },
                                "end": {
                                  "line": 77,
                                  "column": 22
                                }
                              },
                              "name": "newArr"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 2189,
                              "end": 2193,
                              "loc": {
                                "start": {
                                  "line": 77,
                                  "column": 23
                                },
                                "end": {
                                  "line": 77,
                                  "column": 27
                                }
                              },
                              "name": "push"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 2194,
                              "end": 2197,
                              "loc": {
                                "start": {
                                  "line": 77,
                                  "column": 28
                                },
                                "end": {
                                  "line": 77,
                                  "column": 31
                                }
                              },
                              "name": "obj"
                            }
                          ]
                        }
                      },
                      "alternate": null
                    }
                  },
                  {
                    "type": "ReturnStatement",
                    "start": 2208,
                    "end": 2252,
                    "loc": {
                      "start": {
                        "line": 78,
                        "column": 8
                      },
                      "end": {
                        "line": 78,
                        "column": 52
                      }
                    },
                    "argument": {
                      "type": "NewExpression",
                      "start": 2215,
                      "end": 2251,
                      "loc": {
                        "start": {
                          "line": 78,
                          "column": 15
                        },
                        "end": {
                          "line": 78,
                          "column": 51
                        }
                      },
                      "callee": {
                        "type": "Identifier",
                        "start": 2219,
                        "end": 2231,
                        "loc": {
                          "start": {
                            "line": 78,
                            "column": 19
                          },
                          "end": {
                            "line": 78,
                            "column": 31
                          }
                        },
                        "name": "ChangesArray"
                      },
                      "arguments": [
                        {
                          "type": "Identifier",
                          "start": 2232,
                          "end": 2238,
                          "loc": {
                            "start": {
                              "line": 78,
                              "column": 32
                            },
                            "end": {
                              "line": 78,
                              "column": 38
                            }
                          },
                          "name": "newArr"
                        },
                        {
                          "type": "MemberExpression",
                          "start": 2240,
                          "end": 2250,
                          "loc": {
                            "start": {
                              "line": 78,
                              "column": 40
                            },
                            "end": {
                              "line": 78,
                              "column": 50
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 2240,
                            "end": 2244,
                            "loc": {
                              "start": {
                                "line": 78,
                                "column": 40
                              },
                              "end": {
                                "line": 78,
                                "column": 44
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 2245,
                            "end": 2250,
                            "loc": {
                              "start": {
                                "line": 78,
                                "column": 45
                              },
                              "end": {
                                "line": 78,
                                "column": 50
                              }
                            },
                            "name": "label"
                          },
                          "computed": false
                        }
                      ]
                    }
                  }
                ]
              }
            }
          },
          {
            "type": "MethodDefinition",
            "start": 2263,
            "end": 2344,
            "loc": {
              "start": {
                "line": 80,
                "column": 4
              },
              "end": {
                "line": 82,
                "column": 5
              }
            },
            "computed": false,
            "key": {
              "type": "Identifier",
              "start": 2263,
              "end": 2275,
              "loc": {
                "start": {
                  "line": 80,
                  "column": 4
                },
                "end": {
                  "line": 80,
                  "column": 16
                }
              },
              "name": "singleOfType"
            },
            "static": false,
            "kind": "method",
            "value": {
              "type": "FunctionExpression",
              "start": 2275,
              "end": 2344,
              "loc": {
                "start": {
                  "line": 80,
                  "column": 16
                },
                "end": {
                  "line": 82,
                  "column": 5
                }
              },
              "id": null,
              "generator": false,
              "expression": false,
              "async": false,
              "params": [
                {
                  "type": "Identifier",
                  "start": 2276,
                  "end": 2280,
                  "loc": {
                    "start": {
                      "line": 80,
                      "column": 17
                    },
                    "end": {
                      "line": 80,
                      "column": 21
                    }
                  },
                  "name": "type"
                }
              ],
              "body": {
                "type": "BlockStatement",
                "start": 2282,
                "end": 2344,
                "loc": {
                  "start": {
                    "line": 80,
                    "column": 23
                  },
                  "end": {
                    "line": 82,
                    "column": 5
                  }
                },
                "body": [
                  {
                    "type": "ReturnStatement",
                    "start": 2292,
                    "end": 2338,
                    "loc": {
                      "start": {
                        "line": 81,
                        "column": 8
                      },
                      "end": {
                        "line": 81,
                        "column": 54
                      }
                    },
                    "argument": {
                      "type": "MemberExpression",
                      "start": 2299,
                      "end": 2337,
                      "loc": {
                        "start": {
                          "line": 81,
                          "column": 15
                        },
                        "end": {
                          "line": 81,
                          "column": 53
                        }
                      },
                      "object": {
                        "type": "CallExpression",
                        "start": 2299,
                        "end": 2334,
                        "loc": {
                          "start": {
                            "line": 81,
                            "column": 15
                          },
                          "end": {
                            "line": 81,
                            "column": 50
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 2299,
                          "end": 2332,
                          "loc": {
                            "start": {
                              "line": 81,
                              "column": 15
                            },
                            "end": {
                              "line": 81,
                              "column": 48
                            }
                          },
                          "object": {
                            "type": "CallExpression",
                            "start": 2299,
                            "end": 2325,
                            "loc": {
                              "start": {
                                "line": 81,
                                "column": 15
                              },
                              "end": {
                                "line": 81,
                                "column": 41
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 2299,
                              "end": 2319,
                              "loc": {
                                "start": {
                                  "line": 81,
                                  "column": 15
                                },
                                "end": {
                                  "line": 81,
                                  "column": 35
                                }
                              },
                              "object": {
                                "type": "CallExpression",
                                "start": 2299,
                                "end": 2312,
                                "loc": {
                                  "start": {
                                    "line": 81,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 81,
                                    "column": 28
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 2299,
                                  "end": 2310,
                                  "loc": {
                                    "start": {
                                      "line": 81,
                                      "column": 15
                                    },
                                    "end": {
                                      "line": 81,
                                      "column": 26
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 2299,
                                    "end": 2303,
                                    "loc": {
                                      "start": {
                                        "line": 81,
                                        "column": 15
                                      },
                                      "end": {
                                        "line": 81,
                                        "column": 19
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 2304,
                                    "end": 2310,
                                    "loc": {
                                      "start": {
                                        "line": 81,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 81,
                                        "column": 26
                                      }
                                    },
                                    "name": "single"
                                  },
                                  "computed": false
                                },
                                "arguments": []
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 2313,
                                "end": 2319,
                                "loc": {
                                  "start": {
                                    "line": 81,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 81,
                                    "column": 35
                                  }
                                },
                                "name": "ofType"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 2320,
                                "end": 2324,
                                "loc": {
                                  "start": {
                                    "line": 81,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 81,
                                    "column": 40
                                  }
                                },
                                "name": "type"
                              }
                            ]
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 2326,
                            "end": 2332,
                            "loc": {
                              "start": {
                                "line": 81,
                                "column": 42
                              },
                              "end": {
                                "line": 81,
                                "column": 48
                              }
                            },
                            "name": "single"
                          },
                          "computed": false
                        },
                        "arguments": []
                      },
                      "property": {
                        "type": "Literal",
                        "start": 2335,
                        "end": 2336,
                        "loc": {
                          "start": {
                            "line": 81,
                            "column": 51
                          },
                          "end": {
                            "line": 81,
                            "column": 52
                          }
                        },
                        "value": 0,
                        "rawValue": 0,
                        "raw": "0"
                      },
                      "computed": true
                    }
                  }
                ]
              }
            }
          }
        ]
      }
    },
    {
      "type": "EmptyStatement",
      "start": 2346,
      "end": 2347,
      "loc": {
        "start": {
          "line": 83,
          "column": 1
        },
        "end": {
          "line": 83,
          "column": 2
        }
      }
    },
    {
      "type": "ExportNamedDeclaration",
      "start": 2349,
      "end": 12033,
      "loc": {
        "start": {
          "line": 85,
          "column": 0
        },
        "end": {
          "line": 335,
          "column": 1
        }
      },
      "declaration": {
        "type": "ClassDeclaration",
        "start": 2356,
        "end": 12033,
        "loc": {
          "start": {
            "line": 85,
            "column": 7
          },
          "end": {
            "line": 335,
            "column": 1
          }
        },
        "id": {
          "type": "Identifier",
          "start": 2362,
          "end": 2380,
          "loc": {
            "start": {
              "line": 85,
              "column": 13
            },
            "end": {
              "line": 85,
              "column": 31
            }
          },
          "name": "SketcherAutomation"
        },
        "superClass": null,
        "body": {
          "type": "ClassBody",
          "start": 2381,
          "end": 12033,
          "loc": {
            "start": {
              "line": 85,
              "column": 32
            },
            "end": {
              "line": 335,
              "column": 1
            }
          },
          "body": [
            {
              "type": "MethodDefinition",
              "start": 2387,
              "end": 2748,
              "loc": {
                "start": {
                  "line": 86,
                  "column": 4
                },
                "end": {
                  "line": 95,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 2387,
                "end": 2398,
                "loc": {
                  "start": {
                    "line": 86,
                    "column": 4
                  },
                  "end": {
                    "line": 86,
                    "column": 15
                  }
                },
                "name": "constructor"
              },
              "static": false,
              "kind": "constructor",
              "value": {
                "type": "FunctionExpression",
                "start": 2398,
                "end": 2748,
                "loc": {
                  "start": {
                    "line": 86,
                    "column": 15
                  },
                  "end": {
                    "line": 95,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 2399,
                    "end": 2407,
                    "loc": {
                      "start": {
                        "line": 86,
                        "column": 16
                      },
                      "end": {
                        "line": 86,
                        "column": 24
                      }
                    },
                    "name": "sketcher"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 2409,
                  "end": 2748,
                  "loc": {
                    "start": {
                      "line": 86,
                      "column": 26
                    },
                    "end": {
                      "line": 95,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 2461,
                      "end": 2486,
                      "loc": {
                        "start": {
                          "line": 88,
                          "column": 8
                        },
                        "end": {
                          "line": 88,
                          "column": 33
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 2461,
                        "end": 2485,
                        "loc": {
                          "start": {
                            "line": 88,
                            "column": 8
                          },
                          "end": {
                            "line": 88,
                            "column": 32
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 2461,
                          "end": 2474,
                          "loc": {
                            "start": {
                              "line": 88,
                              "column": 8
                            },
                            "end": {
                              "line": 88,
                              "column": 21
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 2461,
                            "end": 2465,
                            "loc": {
                              "start": {
                                "line": 88,
                                "column": 8
                              },
                              "end": {
                                "line": 88,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 2466,
                            "end": 2474,
                            "loc": {
                              "start": {
                                "line": 88,
                                "column": 13
                              },
                              "end": {
                                "line": 88,
                                "column": 21
                              }
                            },
                            "name": "sketcher"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "Identifier",
                          "start": 2477,
                          "end": 2485,
                          "loc": {
                            "start": {
                              "line": 88,
                              "column": 24
                            },
                            "end": {
                              "line": 88,
                              "column": 32
                            }
                          },
                          "name": "sketcher"
                        },
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "must have for any operations =)",
                          "start": 2419,
                          "end": 2452,
                          "loc": {
                            "start": {
                              "line": 87,
                              "column": 8
                            },
                            "end": {
                              "line": 87,
                              "column": 41
                            }
                          },
                          "range": [
                            2419,
                            2452
                          ]
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "configures automation speed",
                          "start": 2495,
                          "end": 2524,
                          "loc": {
                            "start": {
                              "line": 89,
                              "column": 8
                            },
                            "end": {
                              "line": 89,
                              "column": 37
                            }
                          },
                          "range": [
                            2495,
                            2524
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 2533,
                      "end": 2555,
                      "loc": {
                        "start": {
                          "line": 90,
                          "column": 8
                        },
                        "end": {
                          "line": 90,
                          "column": 30
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 2533,
                        "end": 2554,
                        "loc": {
                          "start": {
                            "line": 90,
                            "column": 8
                          },
                          "end": {
                            "line": 90,
                            "column": 29
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 2533,
                          "end": 2550,
                          "loc": {
                            "start": {
                              "line": 90,
                              "column": 8
                            },
                            "end": {
                              "line": 90,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 2533,
                            "end": 2537,
                            "loc": {
                              "start": {
                                "line": 90,
                                "column": 8
                              },
                              "end": {
                                "line": 90,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 2538,
                            "end": 2550,
                            "loc": {
                              "start": {
                                "line": 90,
                                "column": 13
                              },
                              "end": {
                                "line": 90,
                                "column": 25
                              }
                            },
                            "name": "tickWaitTime"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "Literal",
                          "start": 2553,
                          "end": 2554,
                          "loc": {
                            "start": {
                              "line": 90,
                              "column": 28
                            },
                            "end": {
                              "line": 90,
                              "column": 29
                            }
                          },
                          "value": 0,
                          "rawValue": 0,
                          "raw": "0"
                        },
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "configures automation speed",
                          "start": 2495,
                          "end": 2524,
                          "loc": {
                            "start": {
                              "line": 89,
                              "column": 8
                            },
                            "end": {
                              "line": 89,
                              "column": 37
                            }
                          },
                          "range": [
                            2495,
                            2524
                          ]
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "how much can we miss",
                          "start": 2564,
                          "end": 2586,
                          "loc": {
                            "start": {
                              "line": 91,
                              "column": 8
                            },
                            "end": {
                              "line": 91,
                              "column": 30
                            }
                          },
                          "range": [
                            2564,
                            2586
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 2595,
                      "end": 2623,
                      "loc": {
                        "start": {
                          "line": 92,
                          "column": 8
                        },
                        "end": {
                          "line": 92,
                          "column": 36
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 2595,
                        "end": 2622,
                        "loc": {
                          "start": {
                            "line": 92,
                            "column": 8
                          },
                          "end": {
                            "line": 92,
                            "column": 35
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 2595,
                          "end": 2615,
                          "loc": {
                            "start": {
                              "line": 92,
                              "column": 8
                            },
                            "end": {
                              "line": 92,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 2595,
                            "end": 2599,
                            "loc": {
                              "start": {
                                "line": 92,
                                "column": 8
                              },
                              "end": {
                                "line": 92,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 2600,
                            "end": 2615,
                            "loc": {
                              "start": {
                                "line": 92,
                                "column": 13
                              },
                              "end": {
                                "line": 92,
                                "column": 28
                              }
                            },
                            "name": "linearTolerance"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "Literal",
                          "start": 2618,
                          "end": 2622,
                          "loc": {
                            "start": {
                              "line": 92,
                              "column": 31
                            },
                            "end": {
                              "line": 92,
                              "column": 35
                            }
                          },
                          "value": 0.01,
                          "rawValue": 0.01,
                          "raw": "0.01"
                        },
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "how much can we miss",
                          "start": 2564,
                          "end": 2586,
                          "loc": {
                            "start": {
                              "line": 91,
                              "column": 8
                            },
                            "end": {
                              "line": 91,
                              "column": 30
                            }
                          },
                          "range": [
                            2564,
                            2586
                          ]
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "where we can move mouse to not hover anything",
                          "start": 2632,
                          "end": 2679,
                          "loc": {
                            "start": {
                              "line": 93,
                              "column": 8
                            },
                            "end": {
                              "line": 93,
                              "column": 55
                            }
                          },
                          "range": [
                            2632,
                            2679
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 2688,
                      "end": 2742,
                      "loc": {
                        "start": {
                          "line": 94,
                          "column": 8
                        },
                        "end": {
                          "line": 94,
                          "column": 62
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 2688,
                        "end": 2741,
                        "loc": {
                          "start": {
                            "line": 94,
                            "column": 8
                          },
                          "end": {
                            "line": 94,
                            "column": 61
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 2688,
                          "end": 2702,
                          "loc": {
                            "start": {
                              "line": 94,
                              "column": 8
                            },
                            "end": {
                              "line": 94,
                              "column": 22
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 2688,
                            "end": 2692,
                            "loc": {
                              "start": {
                                "line": 94,
                                "column": 8
                              },
                              "end": {
                                "line": 94,
                                "column": 12
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 2693,
                            "end": 2702,
                            "loc": {
                              "start": {
                                "line": 94,
                                "column": 13
                              },
                              "end": {
                                "line": 94,
                                "column": 22
                              }
                            },
                            "name": "safePoint"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "NewExpression",
                          "start": 2705,
                          "end": 2741,
                          "loc": {
                            "start": {
                              "line": 94,
                              "column": 25
                            },
                            "end": {
                              "line": 94,
                              "column": 61
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 2709,
                            "end": 2722,
                            "loc": {
                              "start": {
                                "line": 94,
                                "column": 29
                              },
                              "end": {
                                "line": 94,
                                "column": 42
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 2709,
                              "end": 2714,
                              "loc": {
                                "start": {
                                  "line": 94,
                                  "column": 29
                                },
                                "end": {
                                  "line": 94,
                                  "column": 34
                                }
                              },
                              "name": "THREE"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 2715,
                              "end": 2722,
                              "loc": {
                                "start": {
                                  "line": 94,
                                  "column": 35
                                },
                                "end": {
                                  "line": 94,
                                  "column": 42
                                }
                              },
                              "name": "Vector2"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "UnaryExpression",
                              "start": 2723,
                              "end": 2731,
                              "loc": {
                                "start": {
                                  "line": 94,
                                  "column": 43
                                },
                                "end": {
                                  "line": 94,
                                  "column": 51
                                }
                              },
                              "operator": "-",
                              "prefix": true,
                              "argument": {
                                "type": "Literal",
                                "start": 2724,
                                "end": 2731,
                                "loc": {
                                  "start": {
                                    "line": 94,
                                    "column": 44
                                  },
                                  "end": {
                                    "line": 94,
                                    "column": 51
                                  }
                                },
                                "value": 123.456,
                                "rawValue": 123.456,
                                "raw": "123.456"
                              }
                            },
                            {
                              "type": "UnaryExpression",
                              "start": 2733,
                              "end": 2740,
                              "loc": {
                                "start": {
                                  "line": 94,
                                  "column": 53
                                },
                                "end": {
                                  "line": 94,
                                  "column": 60
                                }
                              },
                              "operator": "-",
                              "prefix": true,
                              "argument": {
                                "type": "Literal",
                                "start": 2734,
                                "end": 2740,
                                "loc": {
                                  "start": {
                                    "line": 94,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 94,
                                    "column": 60
                                  }
                                },
                                "value": 98.765,
                                "rawValue": 98.765,
                                "raw": "98.765"
                              }
                            }
                          ]
                        },
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "where we can move mouse to not hover anything",
                          "start": 2632,
                          "end": 2679,
                          "loc": {
                            "start": {
                              "line": 93,
                              "column": 8
                            },
                            "end": {
                              "line": 93,
                              "column": 55
                            }
                          },
                          "range": [
                            2632,
                            2679
                          ]
                        }
                      ]
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": "Note: not sure this method would survive..",
                  "start": 2754,
                  "end": 2798,
                  "loc": {
                    "start": {
                      "line": 97,
                      "column": 4
                    },
                    "end": {
                      "line": 97,
                      "column": 48
                    }
                  },
                  "range": [
                    2754,
                    2798
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 2803,
              "end": 2874,
              "loc": {
                "start": {
                  "line": 98,
                  "column": 4
                },
                "end": {
                  "line": 100,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 2803,
                "end": 2816,
                "loc": {
                  "start": {
                    "line": 98,
                    "column": 4
                  },
                  "end": {
                    "line": 98,
                    "column": 17
                  }
                },
                "name": "setRootObject",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 2816,
                "end": 2874,
                "loc": {
                  "start": {
                    "line": 98,
                    "column": 17
                  },
                  "end": {
                    "line": 100,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 2817,
                    "end": 2827,
                    "loc": {
                      "start": {
                        "line": 98,
                        "column": 18
                      },
                      "end": {
                        "line": 98,
                        "column": 28
                      }
                    },
                    "name": "rootObject"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 2829,
                  "end": 2874,
                  "loc": {
                    "start": {
                      "line": 98,
                      "column": 30
                    },
                    "end": {
                      "line": 100,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 2839,
                      "end": 2868,
                      "loc": {
                        "start": {
                          "line": 99,
                          "column": 8
                        },
                        "end": {
                          "line": 99,
                          "column": 37
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 2839,
                        "end": 2867,
                        "loc": {
                          "start": {
                            "line": 99,
                            "column": 8
                          },
                          "end": {
                            "line": 99,
                            "column": 36
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 2839,
                          "end": 2854,
                          "loc": {
                            "start": {
                              "line": 99,
                              "column": 8
                            },
                            "end": {
                              "line": 99,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 2839,
                            "end": 2843,
                            "loc": {
                              "start": {
                                "line": 99,
                                "column": 8
                              },
                              "end": {
                                "line": 99,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 2844,
                            "end": 2854,
                            "loc": {
                              "start": {
                                "line": 99,
                                "column": 13
                              },
                              "end": {
                                "line": 99,
                                "column": 23
                              }
                            },
                            "name": "rootObject"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Identifier",
                          "start": 2857,
                          "end": 2867,
                          "loc": {
                            "start": {
                              "line": 99,
                              "column": 26
                            },
                            "end": {
                              "line": 99,
                              "column": 36
                            }
                          },
                          "name": "rootObject"
                        }
                      }
                    }
                  ]
                }
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": "Note: not sure this method would survive..",
                  "start": 2754,
                  "end": 2798,
                  "loc": {
                    "start": {
                      "line": 97,
                      "column": 4
                    },
                    "end": {
                      "line": 97,
                      "column": 48
                    }
                  },
                  "range": [
                    2754,
                    2798
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 2880,
              "end": 3104,
              "loc": {
                "start": {
                  "line": 102,
                  "column": 4
                },
                "end": {
                  "line": 109,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 2886,
                "end": 2893,
                "loc": {
                  "start": {
                    "line": 102,
                    "column": 10
                  },
                  "end": {
                    "line": 102,
                    "column": 17
                  }
                },
                "name": "execute"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 2893,
                "end": 3104,
                "loc": {
                  "start": {
                    "line": 102,
                    "column": 17
                  },
                  "end": {
                    "line": 109,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 2894,
                    "end": 2900,
                    "loc": {
                      "start": {
                        "line": 102,
                        "column": 18
                      },
                      "end": {
                        "line": 102,
                        "column": 24
                      }
                    },
                    "name": "lambda"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 2902,
                  "end": 3104,
                  "loc": {
                    "start": {
                      "line": 102,
                      "column": 26
                    },
                    "end": {
                      "line": 109,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 2912,
                      "end": 2961,
                      "loc": {
                        "start": {
                          "line": 103,
                          "column": 8
                        },
                        "end": {
                          "line": 103,
                          "column": 57
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 2912,
                        "end": 2960,
                        "loc": {
                          "start": {
                            "line": 103,
                            "column": 8
                          },
                          "end": {
                            "line": 103,
                            "column": 56
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 2912,
                          "end": 2952,
                          "loc": {
                            "start": {
                              "line": 103,
                              "column": 8
                            },
                            "end": {
                              "line": 103,
                              "column": 48
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 2912,
                            "end": 2944,
                            "loc": {
                              "start": {
                                "line": 103,
                                "column": 8
                              },
                              "end": {
                                "line": 103,
                                "column": 40
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 2912,
                              "end": 2938,
                              "loc": {
                                "start": {
                                  "line": 103,
                                  "column": 8
                                },
                                "end": {
                                  "line": 103,
                                  "column": 34
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 2912,
                                "end": 2925,
                                "loc": {
                                  "start": {
                                    "line": 103,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 103,
                                    "column": 21
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 2912,
                                  "end": 2916,
                                  "loc": {
                                    "start": {
                                      "line": 103,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 103,
                                      "column": 12
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 2917,
                                  "end": 2925,
                                  "loc": {
                                    "start": {
                                      "line": 103,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 103,
                                      "column": 21
                                    }
                                  },
                                  "name": "sketcher"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 2926,
                                "end": 2938,
                                "loc": {
                                  "start": {
                                    "line": 103,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 103,
                                    "column": 34
                                  }
                                },
                                "name": "__parentView"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 2939,
                              "end": 2944,
                              "loc": {
                                "start": {
                                  "line": 103,
                                  "column": 35
                                },
                                "end": {
                                  "line": 103,
                                  "column": 40
                                }
                              },
                              "name": "input"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 2945,
                            "end": 2952,
                            "loc": {
                              "start": {
                                "line": 103,
                                "column": 41
                              },
                              "end": {
                                "line": 103,
                                "column": 48
                              }
                            },
                            "name": "enabled"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 2955,
                          "end": 2960,
                          "loc": {
                            "start": {
                              "line": 103,
                              "column": 51
                            },
                            "end": {
                              "line": 103,
                              "column": 56
                            }
                          },
                          "value": false,
                          "rawValue": false,
                          "raw": "false"
                        }
                      }
                    },
                    {
                      "type": "TryStatement",
                      "start": 2970,
                      "end": 3098,
                      "loc": {
                        "start": {
                          "line": 104,
                          "column": 8
                        },
                        "end": {
                          "line": 108,
                          "column": 9
                        }
                      },
                      "block": {
                        "type": "BlockStatement",
                        "start": 2974,
                        "end": 3017,
                        "loc": {
                          "start": {
                            "line": 104,
                            "column": 12
                          },
                          "end": {
                            "line": 106,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 2988,
                            "end": 3007,
                            "loc": {
                              "start": {
                                "line": 105,
                                "column": 12
                              },
                              "end": {
                                "line": 105,
                                "column": 31
                              }
                            },
                            "expression": {
                              "type": "AwaitExpression",
                              "start": 2988,
                              "end": 3006,
                              "loc": {
                                "start": {
                                  "line": 105,
                                  "column": 12
                                },
                                "end": {
                                  "line": 105,
                                  "column": 30
                                }
                              },
                              "all": false,
                              "argument": {
                                "type": "CallExpression",
                                "start": 2994,
                                "end": 3006,
                                "loc": {
                                  "start": {
                                    "line": 105,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 105,
                                    "column": 30
                                  }
                                },
                                "callee": {
                                  "type": "Identifier",
                                  "start": 2994,
                                  "end": 3000,
                                  "loc": {
                                    "start": {
                                      "line": 105,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 105,
                                      "column": 24
                                    }
                                  },
                                  "name": "lambda"
                                },
                                "arguments": [
                                  {
                                    "type": "ThisExpression",
                                    "start": 3001,
                                    "end": 3005,
                                    "loc": {
                                      "start": {
                                        "line": 105,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 105,
                                        "column": 29
                                      }
                                    }
                                  }
                                ]
                              }
                            }
                          }
                        ]
                      },
                      "handler": null,
                      "guardedHandlers": [],
                      "finalizer": {
                        "type": "BlockStatement",
                        "start": 3026,
                        "end": 3098,
                        "loc": {
                          "start": {
                            "line": 106,
                            "column": 18
                          },
                          "end": {
                            "line": 108,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 3040,
                            "end": 3088,
                            "loc": {
                              "start": {
                                "line": 107,
                                "column": 12
                              },
                              "end": {
                                "line": 107,
                                "column": 60
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 3040,
                              "end": 3087,
                              "loc": {
                                "start": {
                                  "line": 107,
                                  "column": 12
                                },
                                "end": {
                                  "line": 107,
                                  "column": 59
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 3040,
                                "end": 3080,
                                "loc": {
                                  "start": {
                                    "line": 107,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 107,
                                    "column": 52
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 3040,
                                  "end": 3072,
                                  "loc": {
                                    "start": {
                                      "line": 107,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 107,
                                      "column": 44
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 3040,
                                    "end": 3066,
                                    "loc": {
                                      "start": {
                                        "line": 107,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 107,
                                        "column": 38
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 3040,
                                      "end": 3053,
                                      "loc": {
                                        "start": {
                                          "line": 107,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 107,
                                          "column": 25
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 3040,
                                        "end": 3044,
                                        "loc": {
                                          "start": {
                                            "line": 107,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 107,
                                            "column": 16
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 3045,
                                        "end": 3053,
                                        "loc": {
                                          "start": {
                                            "line": 107,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 107,
                                            "column": 25
                                          }
                                        },
                                        "name": "sketcher"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 3054,
                                      "end": 3066,
                                      "loc": {
                                        "start": {
                                          "line": 107,
                                          "column": 26
                                        },
                                        "end": {
                                          "line": 107,
                                          "column": 38
                                        }
                                      },
                                      "name": "__parentView"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 3067,
                                    "end": 3072,
                                    "loc": {
                                      "start": {
                                        "line": 107,
                                        "column": 39
                                      },
                                      "end": {
                                        "line": 107,
                                        "column": 44
                                      }
                                    },
                                    "name": "input"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3073,
                                  "end": 3080,
                                  "loc": {
                                    "start": {
                                      "line": 107,
                                      "column": 45
                                    },
                                    "end": {
                                      "line": 107,
                                      "column": 52
                                    }
                                  },
                                  "name": "enabled"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "Literal",
                                "start": 3083,
                                "end": 3087,
                                "loc": {
                                  "start": {
                                    "line": 107,
                                    "column": 55
                                  },
                                  "end": {
                                    "line": 107,
                                    "column": 59
                                  }
                                },
                                "value": true,
                                "rawValue": true,
                                "raw": "true"
                              }
                            }
                          }
                        ]
                      }
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": "tick is called internally to control speed of automation",
                  "start": 3110,
                  "end": 3168,
                  "loc": {
                    "start": {
                      "line": 111,
                      "column": 4
                    },
                    "end": {
                      "line": 111,
                      "column": 62
                    }
                  },
                  "range": [
                    3110,
                    3168
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 3173,
              "end": 3238,
              "loc": {
                "start": {
                  "line": 112,
                  "column": 4
                },
                "end": {
                  "line": 114,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 3173,
                "end": 3188,
                "loc": {
                  "start": {
                    "line": 112,
                    "column": 4
                  },
                  "end": {
                    "line": 112,
                    "column": 19
                  }
                },
                "name": "setTickWaitTime",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 3188,
                "end": 3238,
                "loc": {
                  "start": {
                    "line": 112,
                    "column": 19
                  },
                  "end": {
                    "line": 114,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 3189,
                    "end": 3194,
                    "loc": {
                      "start": {
                        "line": 112,
                        "column": 20
                      },
                      "end": {
                        "line": 112,
                        "column": 25
                      }
                    },
                    "name": "delay"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 3196,
                  "end": 3238,
                  "loc": {
                    "start": {
                      "line": 112,
                      "column": 27
                    },
                    "end": {
                      "line": 114,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 3206,
                      "end": 3232,
                      "loc": {
                        "start": {
                          "line": 113,
                          "column": 8
                        },
                        "end": {
                          "line": 113,
                          "column": 34
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3206,
                        "end": 3231,
                        "loc": {
                          "start": {
                            "line": 113,
                            "column": 8
                          },
                          "end": {
                            "line": 113,
                            "column": 33
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 3206,
                          "end": 3223,
                          "loc": {
                            "start": {
                              "line": 113,
                              "column": 8
                            },
                            "end": {
                              "line": 113,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 3206,
                            "end": 3210,
                            "loc": {
                              "start": {
                                "line": 113,
                                "column": 8
                              },
                              "end": {
                                "line": 113,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3211,
                            "end": 3223,
                            "loc": {
                              "start": {
                                "line": 113,
                                "column": 13
                              },
                              "end": {
                                "line": 113,
                                "column": 25
                              }
                            },
                            "name": "tickWaitTime"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Identifier",
                          "start": 3226,
                          "end": 3231,
                          "loc": {
                            "start": {
                              "line": 113,
                              "column": 28
                            },
                            "end": {
                              "line": 113,
                              "column": 33
                            }
                          },
                          "name": "delay"
                        }
                      }
                    }
                  ]
                }
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": "tick is called internally to control speed of automation",
                  "start": 3110,
                  "end": 3168,
                  "loc": {
                    "start": {
                      "line": 111,
                      "column": 4
                    },
                    "end": {
                      "line": 111,
                      "column": 62
                    }
                  },
                  "range": [
                    3110,
                    3168
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 3243,
              "end": 3360,
              "loc": {
                "start": {
                  "line": 115,
                  "column": 4
                },
                "end": {
                  "line": 119,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 3249,
                "end": 3253,
                "loc": {
                  "start": {
                    "line": 115,
                    "column": 10
                  },
                  "end": {
                    "line": 115,
                    "column": 14
                  }
                },
                "name": "tick"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 3253,
                "end": 3360,
                "loc": {
                  "start": {
                    "line": 115,
                    "column": 14
                  },
                  "end": {
                    "line": 119,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 3256,
                  "end": 3360,
                  "loc": {
                    "start": {
                      "line": 115,
                      "column": 17
                    },
                    "end": {
                      "line": 119,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 3266,
                      "end": 3314,
                      "loc": {
                        "start": {
                          "line": 116,
                          "column": 8
                        },
                        "end": {
                          "line": 117,
                          "column": 18
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 3270,
                        "end": 3294,
                        "loc": {
                          "start": {
                            "line": 116,
                            "column": 12
                          },
                          "end": {
                            "line": 116,
                            "column": 36
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "BinaryExpression",
                          "start": 3272,
                          "end": 3293,
                          "loc": {
                            "start": {
                              "line": 116,
                              "column": 14
                            },
                            "end": {
                              "line": 116,
                              "column": 35
                            }
                          },
                          "left": {
                            "type": "MemberExpression",
                            "start": 3272,
                            "end": 3289,
                            "loc": {
                              "start": {
                                "line": 116,
                                "column": 14
                              },
                              "end": {
                                "line": 116,
                                "column": 31
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 3272,
                              "end": 3276,
                              "loc": {
                                "start": {
                                  "line": 116,
                                  "column": 14
                                },
                                "end": {
                                  "line": 116,
                                  "column": 18
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3277,
                              "end": 3289,
                              "loc": {
                                "start": {
                                  "line": 116,
                                  "column": 19
                                },
                                "end": {
                                  "line": 116,
                                  "column": 31
                                }
                              },
                              "name": "tickWaitTime"
                            },
                            "computed": false
                          },
                          "operator": ">",
                          "right": {
                            "type": "Literal",
                            "start": 3292,
                            "end": 3293,
                            "loc": {
                              "start": {
                                "line": 116,
                                "column": 34
                              },
                              "end": {
                                "line": 116,
                                "column": 35
                              }
                            },
                            "value": 0,
                            "rawValue": 0,
                            "raw": "0"
                          },
                          "parenthesizedExpression": true
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 3308,
                        "end": 3314,
                        "loc": {
                          "start": {
                            "line": 117,
                            "column": 12
                          },
                          "end": {
                            "line": 117,
                            "column": 18
                          }
                        },
                        "argument": null
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3323,
                      "end": 3354,
                      "loc": {
                        "start": {
                          "line": 118,
                          "column": 8
                        },
                        "end": {
                          "line": 118,
                          "column": 39
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 3323,
                        "end": 3353,
                        "loc": {
                          "start": {
                            "line": 118,
                            "column": 8
                          },
                          "end": {
                            "line": 118,
                            "column": 38
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 3329,
                          "end": 3353,
                          "loc": {
                            "start": {
                              "line": 118,
                              "column": 14
                            },
                            "end": {
                              "line": 118,
                              "column": 38
                            }
                          },
                          "callee": {
                            "type": "Identifier",
                            "start": 3329,
                            "end": 3334,
                            "loc": {
                              "start": {
                                "line": 118,
                                "column": 14
                              },
                              "end": {
                                "line": 118,
                                "column": 19
                              }
                            },
                            "name": "delay"
                          },
                          "arguments": [
                            {
                              "type": "MemberExpression",
                              "start": 3335,
                              "end": 3352,
                              "loc": {
                                "start": {
                                  "line": 118,
                                  "column": 20
                                },
                                "end": {
                                  "line": 118,
                                  "column": 37
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 3335,
                                "end": 3339,
                                "loc": {
                                  "start": {
                                    "line": 118,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 118,
                                    "column": 24
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 3340,
                                "end": 3352,
                                "loc": {
                                  "start": {
                                    "line": 118,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 118,
                                    "column": 37
                                  }
                                },
                                "name": "tickWaitTime"
                              },
                              "computed": false
                            }
                          ]
                        }
                      }
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": "managing sketches creation and selection",
                  "start": 3366,
                  "end": 3408,
                  "loc": {
                    "start": {
                      "line": 121,
                      "column": 4
                    },
                    "end": {
                      "line": 121,
                      "column": 46
                    }
                  },
                  "range": [
                    3366,
                    3408
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 3413,
              "end": 4190,
              "loc": {
                "start": {
                  "line": 122,
                  "column": 4
                },
                "end": {
                  "line": 140,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 3419,
                "end": 3431,
                "loc": {
                  "start": {
                    "line": 122,
                    "column": 10
                  },
                  "end": {
                    "line": 122,
                    "column": 22
                  }
                },
                "name": "createSketch"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 3431,
                "end": 4190,
                "loc": {
                  "start": {
                    "line": 122,
                    "column": 22
                  },
                  "end": {
                    "line": 140,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 3432,
                    "end": 3438,
                    "loc": {
                      "start": {
                        "line": 122,
                        "column": 23
                      },
                      "end": {
                        "line": 122,
                        "column": 29
                      }
                    },
                    "name": "origin"
                  },
                  {
                    "type": "Identifier",
                    "start": 3440,
                    "end": 3450,
                    "loc": {
                      "start": {
                        "line": 122,
                        "column": 31
                      },
                      "end": {
                        "line": 122,
                        "column": 41
                      }
                    },
                    "name": "quaternion"
                  },
                  {
                    "type": "Identifier",
                    "start": 3452,
                    "end": 3456,
                    "loc": {
                      "start": {
                        "line": 122,
                        "column": 43
                      },
                      "end": {
                        "line": 122,
                        "column": 47
                      }
                    },
                    "name": "part"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 3458,
                  "end": 4190,
                  "loc": {
                    "start": {
                      "line": 122,
                      "column": 49
                    },
                    "end": {
                      "line": 140,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 3528,
                      "end": 3884,
                      "loc": {
                        "start": {
                          "line": 124,
                          "column": 8
                        },
                        "end": {
                          "line": 132,
                          "column": 9
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 3532,
                        "end": 3537,
                        "loc": {
                          "start": {
                            "line": 124,
                            "column": 12
                          },
                          "end": {
                            "line": 124,
                            "column": 17
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "Identifier",
                          "start": 3533,
                          "end": 3537,
                          "loc": {
                            "start": {
                              "line": 124,
                              "column": 13
                            },
                            "end": {
                              "line": 124,
                              "column": 17
                            }
                          },
                          "name": "part",
                          "leadingComments": null
                        },
                        "leadingComments": null
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 3539,
                        "end": 3884,
                        "loc": {
                          "start": {
                            "line": 124,
                            "column": 19
                          },
                          "end": {
                            "line": 132,
                            "column": 9
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 3553,
                            "end": 3622,
                            "loc": {
                              "start": {
                                "line": 125,
                                "column": 12
                              },
                              "end": {
                                "line": 125,
                                "column": 81
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 3553,
                              "end": 3621,
                              "loc": {
                                "start": {
                                  "line": 125,
                                  "column": 12
                                },
                                "end": {
                                  "line": 125,
                                  "column": 80
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 3553,
                                "end": 3558,
                                "loc": {
                                  "start": {
                                    "line": 125,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 125,
                                    "column": 17
                                  }
                                },
                                "name": "check"
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 3559,
                                  "end": 3574,
                                  "loc": {
                                    "start": {
                                      "line": 125,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 125,
                                      "column": 33
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 3559,
                                    "end": 3563,
                                    "loc": {
                                      "start": {
                                        "line": 125,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 125,
                                        "column": 22
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 3564,
                                    "end": 3574,
                                    "loc": {
                                      "start": {
                                        "line": 125,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 125,
                                        "column": 33
                                      }
                                    },
                                    "name": "rootObject"
                                  },
                                  "computed": false
                                },
                                {
                                  "type": "Literal",
                                  "start": 3576,
                                  "end": 3620,
                                  "loc": {
                                    "start": {
                                      "line": 125,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 125,
                                      "column": 79
                                    }
                                  },
                                  "value": "Neither part nor root object not specified",
                                  "rawValue": "Neither part nor root object not specified",
                                  "raw": "\"Neither part nor root object not specified\""
                                }
                              ]
                            },
                            "trailingComments": [
                              {
                                "type": "CommentLine",
                                "value": "try to find any part from the root",
                                "start": 3635,
                                "end": 3671,
                                "loc": {
                                  "start": {
                                    "line": 126,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 126,
                                    "column": 48
                                  }
                                },
                                "range": [
                                  3635,
                                  3671
                                ]
                              }
                            ]
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 3684,
                            "end": 3808,
                            "loc": {
                              "start": {
                                "line": 127,
                                "column": 12
                              },
                              "end": {
                                "line": 130,
                                "column": 15
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 3684,
                              "end": 3807,
                              "loc": {
                                "start": {
                                  "line": 127,
                                  "column": 12
                                },
                                "end": {
                                  "line": 130,
                                  "column": 14
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 3684,
                                "end": 3708,
                                "loc": {
                                  "start": {
                                    "line": 127,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 127,
                                    "column": 36
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 3684,
                                  "end": 3699,
                                  "loc": {
                                    "start": {
                                      "line": 127,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 127,
                                      "column": 27
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 3684,
                                    "end": 3688,
                                    "loc": {
                                      "start": {
                                        "line": 127,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 127,
                                        "column": 16
                                      }
                                    },
                                    "leadingComments": null
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 3689,
                                    "end": 3699,
                                    "loc": {
                                      "start": {
                                        "line": 127,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 127,
                                        "column": 27
                                      }
                                    },
                                    "name": "rootObject"
                                  },
                                  "computed": false,
                                  "leadingComments": null
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3700,
                                  "end": 3708,
                                  "loc": {
                                    "start": {
                                      "line": 127,
                                      "column": 28
                                    },
                                    "end": {
                                      "line": 127,
                                      "column": 36
                                    }
                                  },
                                  "name": "traverse"
                                },
                                "computed": false,
                                "leadingComments": null
                              },
                              "arguments": [
                                {
                                  "type": "ArrowFunctionExpression",
                                  "start": 3709,
                                  "end": 3806,
                                  "loc": {
                                    "start": {
                                      "line": 127,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 130,
                                      "column": 13
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": false,
                                  "async": false,
                                  "params": [
                                    {
                                      "type": "Identifier",
                                      "start": 3710,
                                      "end": 3713,
                                      "loc": {
                                        "start": {
                                          "line": 127,
                                          "column": 38
                                        },
                                        "end": {
                                          "line": 127,
                                          "column": 41
                                        }
                                      },
                                      "name": "obj"
                                    }
                                  ],
                                  "body": {
                                    "type": "BlockStatement",
                                    "start": 3718,
                                    "end": 3806,
                                    "loc": {
                                      "start": {
                                        "line": 127,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 130,
                                        "column": 13
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "IfStatement",
                                        "start": 3736,
                                        "end": 3792,
                                        "loc": {
                                          "start": {
                                            "line": 128,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 129,
                                            "column": 31
                                          }
                                        },
                                        "test": {
                                          "type": "BinaryExpression",
                                          "start": 3740,
                                          "end": 3759,
                                          "loc": {
                                            "start": {
                                              "line": 128,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 128,
                                              "column": 39
                                            }
                                          },
                                          "left": {
                                            "type": "Identifier",
                                            "start": 3740,
                                            "end": 3743,
                                            "loc": {
                                              "start": {
                                                "line": 128,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 128,
                                                "column": 23
                                              }
                                            },
                                            "name": "obj"
                                          },
                                          "operator": "instanceof",
                                          "right": {
                                            "type": "Identifier",
                                            "start": 3755,
                                            "end": 3759,
                                            "loc": {
                                              "start": {
                                                "line": 128,
                                                "column": 35
                                              },
                                              "end": {
                                                "line": 128,
                                                "column": 39
                                              }
                                            },
                                            "name": "Part"
                                          }
                                        },
                                        "consequent": {
                                          "type": "ExpressionStatement",
                                          "start": 3781,
                                          "end": 3792,
                                          "loc": {
                                            "start": {
                                              "line": 129,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 129,
                                              "column": 31
                                            }
                                          },
                                          "expression": {
                                            "type": "AssignmentExpression",
                                            "start": 3781,
                                            "end": 3791,
                                            "loc": {
                                              "start": {
                                                "line": 129,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 129,
                                                "column": 30
                                              }
                                            },
                                            "operator": "=",
                                            "left": {
                                              "type": "Identifier",
                                              "start": 3781,
                                              "end": 3785,
                                              "loc": {
                                                "start": {
                                                  "line": 129,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 129,
                                                  "column": 24
                                                }
                                              },
                                              "name": "part"
                                            },
                                            "right": {
                                              "type": "Identifier",
                                              "start": 3788,
                                              "end": 3791,
                                              "loc": {
                                                "start": {
                                                  "line": 129,
                                                  "column": 27
                                                },
                                                "end": {
                                                  "line": 129,
                                                  "column": 30
                                                }
                                              },
                                              "name": "obj"
                                            }
                                          }
                                        },
                                        "alternate": null
                                      }
                                    ]
                                  }
                                }
                              ],
                              "leadingComments": null
                            },
                            "leadingComments": [
                              {
                                "type": "CommentLine",
                                "value": "try to find any part from the root",
                                "start": 3635,
                                "end": 3671,
                                "loc": {
                                  "start": {
                                    "line": 126,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 126,
                                    "column": 48
                                  }
                                },
                                "range": [
                                  3635,
                                  3671
                                ]
                              }
                            ]
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 3821,
                            "end": 3874,
                            "loc": {
                              "start": {
                                "line": 131,
                                "column": 12
                              },
                              "end": {
                                "line": 131,
                                "column": 65
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 3821,
                              "end": 3873,
                              "loc": {
                                "start": {
                                  "line": 131,
                                  "column": 12
                                },
                                "end": {
                                  "line": 131,
                                  "column": 64
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 3821,
                                "end": 3826,
                                "loc": {
                                  "start": {
                                    "line": 131,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 131,
                                    "column": 17
                                  }
                                },
                                "name": "check"
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 3827,
                                  "end": 3831,
                                  "loc": {
                                    "start": {
                                      "line": 131,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 131,
                                      "column": 22
                                    }
                                  },
                                  "name": "part"
                                },
                                {
                                  "type": "Literal",
                                  "start": 3833,
                                  "end": 3872,
                                  "loc": {
                                    "start": {
                                      "line": 131,
                                      "column": 24
                                    },
                                    "end": {
                                      "line": 131,
                                      "column": 63
                                    }
                                  },
                                  "value": "Cannot find any part in ClassCad tree",
                                  "rawValue": "Cannot find any part in ClassCad tree",
                                  "raw": "\"Cannot find any part in ClassCad tree\""
                                }
                              ]
                            }
                          }
                        ]
                      },
                      "alternate": null,
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "try to automatically deduce parameters if not set",
                          "start": 3468,
                          "end": 3519,
                          "loc": {
                            "start": {
                              "line": 123,
                              "column": 8
                            },
                            "end": {
                              "line": 123,
                              "column": 59
                            }
                          },
                          "range": [
                            3468,
                            3519
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3893,
                      "end": 3938,
                      "loc": {
                        "start": {
                          "line": 133,
                          "column": 8
                        },
                        "end": {
                          "line": 133,
                          "column": 53
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3893,
                        "end": 3937,
                        "loc": {
                          "start": {
                            "line": 133,
                            "column": 8
                          },
                          "end": {
                            "line": 133,
                            "column": 52
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 3893,
                          "end": 3899,
                          "loc": {
                            "start": {
                              "line": 133,
                              "column": 8
                            },
                            "end": {
                              "line": 133,
                              "column": 14
                            }
                          },
                          "name": "origin"
                        },
                        "right": {
                          "type": "LogicalExpression",
                          "start": 3902,
                          "end": 3937,
                          "loc": {
                            "start": {
                              "line": 133,
                              "column": 17
                            },
                            "end": {
                              "line": 133,
                              "column": 52
                            }
                          },
                          "left": {
                            "type": "Identifier",
                            "start": 3902,
                            "end": 3908,
                            "loc": {
                              "start": {
                                "line": 133,
                                "column": 17
                              },
                              "end": {
                                "line": 133,
                                "column": 23
                              }
                            },
                            "name": "origin"
                          },
                          "operator": "||",
                          "right": {
                            "type": "CallExpression",
                            "start": 3912,
                            "end": 3937,
                            "loc": {
                              "start": {
                                "line": 133,
                                "column": 27
                              },
                              "end": {
                                "line": 133,
                                "column": 52
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 3912,
                              "end": 3935,
                              "loc": {
                                "start": {
                                  "line": 133,
                                  "column": 27
                                },
                                "end": {
                                  "line": 133,
                                  "column": 50
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 3912,
                                "end": 3916,
                                "loc": {
                                  "start": {
                                    "line": 133,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 133,
                                    "column": 31
                                  }
                                },
                                "name": "part"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 3917,
                                "end": 3935,
                                "loc": {
                                  "start": {
                                    "line": 133,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 133,
                                    "column": 50
                                  }
                                },
                                "name": "getWorldQuaternion"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3947,
                      "end": 3998,
                      "loc": {
                        "start": {
                          "line": 134,
                          "column": 8
                        },
                        "end": {
                          "line": 134,
                          "column": 59
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 3947,
                        "end": 3997,
                        "loc": {
                          "start": {
                            "line": 134,
                            "column": 8
                          },
                          "end": {
                            "line": 134,
                            "column": 58
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 3947,
                          "end": 3957,
                          "loc": {
                            "start": {
                              "line": 134,
                              "column": 8
                            },
                            "end": {
                              "line": 134,
                              "column": 18
                            }
                          },
                          "name": "quaternion"
                        },
                        "right": {
                          "type": "LogicalExpression",
                          "start": 3960,
                          "end": 3997,
                          "loc": {
                            "start": {
                              "line": 134,
                              "column": 21
                            },
                            "end": {
                              "line": 134,
                              "column": 58
                            }
                          },
                          "left": {
                            "type": "Identifier",
                            "start": 3960,
                            "end": 3970,
                            "loc": {
                              "start": {
                                "line": 134,
                                "column": 21
                              },
                              "end": {
                                "line": 134,
                                "column": 31
                              }
                            },
                            "name": "quaternion"
                          },
                          "operator": "||",
                          "right": {
                            "type": "CallExpression",
                            "start": 3974,
                            "end": 3997,
                            "loc": {
                              "start": {
                                "line": 134,
                                "column": 35
                              },
                              "end": {
                                "line": 134,
                                "column": 58
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 3974,
                              "end": 3995,
                              "loc": {
                                "start": {
                                  "line": 134,
                                  "column": 35
                                },
                                "end": {
                                  "line": 134,
                                  "column": 56
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 3974,
                                "end": 3978,
                                "loc": {
                                  "start": {
                                    "line": 134,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 134,
                                    "column": 39
                                  }
                                },
                                "name": "part"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 3979,
                                "end": 3995,
                                "loc": {
                                  "start": {
                                    "line": 134,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 134,
                                    "column": 56
                                  }
                                },
                                "name": "getWorldPosition"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "create a new sketch",
                          "start": 4008,
                          "end": 4029,
                          "loc": {
                            "start": {
                              "line": 136,
                              "column": 8
                            },
                            "end": {
                              "line": 136,
                              "column": 29
                            }
                          },
                          "range": [
                            4008,
                            4029
                          ]
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 4038,
                      "end": 4107,
                      "loc": {
                        "start": {
                          "line": 137,
                          "column": 8
                        },
                        "end": {
                          "line": 137,
                          "column": 77
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 4042,
                          "end": 4106,
                          "loc": {
                            "start": {
                              "line": 137,
                              "column": 12
                            },
                            "end": {
                              "line": 137,
                              "column": 76
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 4042,
                            "end": 4048,
                            "loc": {
                              "start": {
                                "line": 137,
                                "column": 12
                              },
                              "end": {
                                "line": 137,
                                "column": 18
                              }
                            },
                            "name": "sketch",
                            "leadingComments": null
                          },
                          "init": {
                            "type": "AwaitExpression",
                            "start": 4051,
                            "end": 4106,
                            "loc": {
                              "start": {
                                "line": 137,
                                "column": 21
                              },
                              "end": {
                                "line": 137,
                                "column": 76
                              }
                            },
                            "all": false,
                            "argument": {
                              "type": "CallExpression",
                              "start": 4057,
                              "end": 4106,
                              "loc": {
                                "start": {
                                  "line": 137,
                                  "column": 27
                                },
                                "end": {
                                  "line": 137,
                                  "column": 76
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 4057,
                                "end": 4080,
                                "loc": {
                                  "start": {
                                    "line": 137,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 137,
                                    "column": 50
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 4057,
                                  "end": 4070,
                                  "loc": {
                                    "start": {
                                      "line": 137,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 137,
                                      "column": 40
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 4057,
                                    "end": 4061,
                                    "loc": {
                                      "start": {
                                        "line": 137,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 137,
                                        "column": 31
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 4062,
                                    "end": 4070,
                                    "loc": {
                                      "start": {
                                        "line": 137,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 137,
                                        "column": 40
                                      }
                                    },
                                    "name": "sketcher"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 4071,
                                  "end": 4080,
                                  "loc": {
                                    "start": {
                                      "line": 137,
                                      "column": 41
                                    },
                                    "end": {
                                      "line": 137,
                                      "column": 50
                                    }
                                  },
                                  "name": "newSketch"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 4081,
                                  "end": 4087,
                                  "loc": {
                                    "start": {
                                      "line": 137,
                                      "column": 51
                                    },
                                    "end": {
                                      "line": 137,
                                      "column": 57
                                    }
                                  },
                                  "name": "origin"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 4089,
                                  "end": 4099,
                                  "loc": {
                                    "start": {
                                      "line": 137,
                                      "column": 59
                                    },
                                    "end": {
                                      "line": 137,
                                      "column": 69
                                    }
                                  },
                                  "name": "quaternion"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 4101,
                                  "end": 4105,
                                  "loc": {
                                    "start": {
                                      "line": 137,
                                      "column": 71
                                    },
                                    "end": {
                                      "line": 137,
                                      "column": 75
                                    }
                                  },
                                  "name": "part"
                                }
                              ]
                            }
                          },
                          "leadingComments": null
                        }
                      ],
                      "kind": "let",
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "create a new sketch",
                          "start": 4008,
                          "end": 4029,
                          "loc": {
                            "start": {
                              "line": 136,
                              "column": 8
                            },
                            "end": {
                              "line": 136,
                              "column": 29
                            }
                          },
                          "range": [
                            4008,
                            4029
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 4116,
                      "end": 4161,
                      "loc": {
                        "start": {
                          "line": 138,
                          "column": 8
                        },
                        "end": {
                          "line": 138,
                          "column": 53
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 4116,
                        "end": 4160,
                        "loc": {
                          "start": {
                            "line": 138,
                            "column": 8
                          },
                          "end": {
                            "line": 138,
                            "column": 52
                          }
                        },
                        "callee": {
                          "type": "Identifier",
                          "start": 4116,
                          "end": 4121,
                          "loc": {
                            "start": {
                              "line": 138,
                              "column": 8
                            },
                            "end": {
                              "line": 138,
                              "column": 13
                            }
                          },
                          "name": "check"
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 4122,
                            "end": 4128,
                            "loc": {
                              "start": {
                                "line": 138,
                                "column": 14
                              },
                              "end": {
                                "line": 138,
                                "column": 20
                              }
                            },
                            "name": "sketch"
                          },
                          {
                            "type": "Literal",
                            "start": 4130,
                            "end": 4159,
                            "loc": {
                              "start": {
                                "line": 138,
                                "column": 22
                              },
                              "end": {
                                "line": 138,
                                "column": 51
                              }
                            },
                            "value": "Failed to create new sketch",
                            "rawValue": "Failed to create new sketch",
                            "raw": "\"Failed to create new sketch\""
                          }
                        ]
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 4170,
                      "end": 4184,
                      "loc": {
                        "start": {
                          "line": 139,
                          "column": 8
                        },
                        "end": {
                          "line": 139,
                          "column": 22
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 4177,
                        "end": 4183,
                        "loc": {
                          "start": {
                            "line": 139,
                            "column": 15
                          },
                          "end": {
                            "line": 139,
                            "column": 21
                          }
                        },
                        "name": "sketch"
                      }
                    }
                  ]
                }
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": "managing sketches creation and selection",
                  "start": 3366,
                  "end": 3408,
                  "loc": {
                    "start": {
                      "line": 121,
                      "column": 4
                    },
                    "end": {
                      "line": 121,
                      "column": 46
                    }
                  },
                  "range": [
                    3366,
                    3408
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 4195,
              "end": 4363,
              "loc": {
                "start": {
                  "line": 141,
                  "column": 4
                },
                "end": {
                  "line": 144,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 4201,
                "end": 4213,
                "loc": {
                  "start": {
                    "line": 141,
                    "column": 10
                  },
                  "end": {
                    "line": 141,
                    "column": 22
                  }
                },
                "name": "selectSketch"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 4213,
                "end": 4363,
                "loc": {
                  "start": {
                    "line": 141,
                    "column": 22
                  },
                  "end": {
                    "line": 144,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 4214,
                    "end": 4220,
                    "loc": {
                      "start": {
                        "line": 141,
                        "column": 23
                      },
                      "end": {
                        "line": 141,
                        "column": 29
                      }
                    },
                    "name": "sketch"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 4222,
                  "end": 4363,
                  "loc": {
                    "start": {
                      "line": 141,
                      "column": 31
                    },
                    "end": {
                      "line": 144,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 4232,
                      "end": 4307,
                      "loc": {
                        "start": {
                          "line": 142,
                          "column": 8
                        },
                        "end": {
                          "line": 142,
                          "column": 83
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 4232,
                        "end": 4306,
                        "loc": {
                          "start": {
                            "line": 142,
                            "column": 8
                          },
                          "end": {
                            "line": 142,
                            "column": 82
                          }
                        },
                        "callee": {
                          "type": "Identifier",
                          "start": 4232,
                          "end": 4237,
                          "loc": {
                            "start": {
                              "line": 142,
                              "column": 8
                            },
                            "end": {
                              "line": 142,
                              "column": 13
                            }
                          },
                          "name": "check"
                        },
                        "arguments": [
                          {
                            "type": "BinaryExpression",
                            "start": 4238,
                            "end": 4262,
                            "loc": {
                              "start": {
                                "line": 142,
                                "column": 14
                              },
                              "end": {
                                "line": 142,
                                "column": 38
                              }
                            },
                            "left": {
                              "type": "Identifier",
                              "start": 4238,
                              "end": 4244,
                              "loc": {
                                "start": {
                                  "line": 142,
                                  "column": 14
                                },
                                "end": {
                                  "line": 142,
                                  "column": 20
                                }
                              },
                              "name": "sketch"
                            },
                            "operator": "instanceof",
                            "right": {
                              "type": "Identifier",
                              "start": 4256,
                              "end": 4262,
                              "loc": {
                                "start": {
                                  "line": 142,
                                  "column": 32
                                },
                                "end": {
                                  "line": 142,
                                  "column": 38
                                }
                              },
                              "name": "Sketch"
                            }
                          },
                          {
                            "type": "Literal",
                            "start": 4264,
                            "end": 4305,
                            "loc": {
                              "start": {
                                "line": 142,
                                "column": 40
                              },
                              "end": {
                                "line": 142,
                                "column": 81
                              }
                            },
                            "value": "Sketch is not specified or not a sketch",
                            "rawValue": "Sketch is not specified or not a sketch",
                            "raw": "\"Sketch is not specified or not a sketch\""
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 4316,
                      "end": 4357,
                      "loc": {
                        "start": {
                          "line": 143,
                          "column": 8
                        },
                        "end": {
                          "line": 143,
                          "column": 49
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 4316,
                        "end": 4356,
                        "loc": {
                          "start": {
                            "line": 143,
                            "column": 8
                          },
                          "end": {
                            "line": 143,
                            "column": 48
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 4322,
                          "end": 4356,
                          "loc": {
                            "start": {
                              "line": 143,
                              "column": 14
                            },
                            "end": {
                              "line": 143,
                              "column": 48
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 4322,
                            "end": 4348,
                            "loc": {
                              "start": {
                                "line": 143,
                                "column": 14
                              },
                              "end": {
                                "line": 143,
                                "column": 40
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 4322,
                              "end": 4335,
                              "loc": {
                                "start": {
                                  "line": 143,
                                  "column": 14
                                },
                                "end": {
                                  "line": 143,
                                  "column": 27
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 4322,
                                "end": 4326,
                                "loc": {
                                  "start": {
                                    "line": 143,
                                    "column": 14
                                  },
                                  "end": {
                                    "line": 143,
                                    "column": 18
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 4327,
                                "end": 4335,
                                "loc": {
                                  "start": {
                                    "line": 143,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 143,
                                    "column": 27
                                  }
                                },
                                "name": "sketcher"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 4336,
                              "end": 4348,
                              "loc": {
                                "start": {
                                  "line": 143,
                                  "column": 28
                                },
                                "end": {
                                  "line": 143,
                                  "column": 40
                                }
                              },
                              "name": "selectSketch"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 4349,
                              "end": 4355,
                              "loc": {
                                "start": {
                                  "line": 143,
                                  "column": 41
                                },
                                "end": {
                                  "line": 143,
                                  "column": 47
                                }
                              },
                              "name": "sketch"
                            }
                          ]
                        }
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 4368,
              "end": 4676,
              "loc": {
                "start": {
                  "line": 145,
                  "column": 4
                },
                "end": {
                  "line": 151,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 4374,
                "end": 4388,
                "loc": {
                  "start": {
                    "line": 145,
                    "column": 10
                  },
                  "end": {
                    "line": 145,
                    "column": 24
                  }
                },
                "name": "deselectSketch"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 4388,
                "end": 4676,
                "loc": {
                  "start": {
                    "line": 145,
                    "column": 24
                  },
                  "end": {
                    "line": 151,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 4389,
                    "end": 4395,
                    "loc": {
                      "start": {
                        "line": 145,
                        "column": 25
                      },
                      "end": {
                        "line": 145,
                        "column": 31
                      }
                    },
                    "name": "sketch"
                  },
                  {
                    "type": "Identifier",
                    "start": 4397,
                    "end": 4404,
                    "loc": {
                      "start": {
                        "line": 145,
                        "column": 33
                      },
                      "end": {
                        "line": 145,
                        "column": 40
                      }
                    },
                    "name": "byClick"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 4406,
                  "end": 4676,
                  "loc": {
                    "start": {
                      "line": 145,
                      "column": 42
                    },
                    "end": {
                      "line": 151,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 4416,
                      "end": 4501,
                      "loc": {
                        "start": {
                          "line": 146,
                          "column": 8
                        },
                        "end": {
                          "line": 146,
                          "column": 93
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 4416,
                        "end": 4500,
                        "loc": {
                          "start": {
                            "line": 146,
                            "column": 8
                          },
                          "end": {
                            "line": 146,
                            "column": 92
                          }
                        },
                        "callee": {
                          "type": "Identifier",
                          "start": 4416,
                          "end": 4421,
                          "loc": {
                            "start": {
                              "line": 146,
                              "column": 8
                            },
                            "end": {
                              "line": 146,
                              "column": 13
                            }
                          },
                          "name": "check"
                        },
                        "arguments": [
                          {
                            "type": "LogicalExpression",
                            "start": 4422,
                            "end": 4471,
                            "loc": {
                              "start": {
                                "line": 146,
                                "column": 14
                              },
                              "end": {
                                "line": 146,
                                "column": 63
                              }
                            },
                            "left": {
                              "type": "UnaryExpression",
                              "start": 4422,
                              "end": 4429,
                              "loc": {
                                "start": {
                                  "line": 146,
                                  "column": 14
                                },
                                "end": {
                                  "line": 146,
                                  "column": 21
                                }
                              },
                              "operator": "!",
                              "prefix": true,
                              "argument": {
                                "type": "Identifier",
                                "start": 4423,
                                "end": 4429,
                                "loc": {
                                  "start": {
                                    "line": 146,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 146,
                                    "column": 21
                                  }
                                },
                                "name": "sketch"
                              }
                            },
                            "operator": "||",
                            "right": {
                              "type": "BinaryExpression",
                              "start": 4433,
                              "end": 4471,
                              "loc": {
                                "start": {
                                  "line": 146,
                                  "column": 25
                                },
                                "end": {
                                  "line": 146,
                                  "column": 63
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 4433,
                                "end": 4439,
                                "loc": {
                                  "start": {
                                    "line": 146,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 146,
                                    "column": 31
                                  }
                                },
                                "name": "sketch"
                              },
                              "operator": "===",
                              "right": {
                                "type": "MemberExpression",
                                "start": 4444,
                                "end": 4471,
                                "loc": {
                                  "start": {
                                    "line": 146,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 146,
                                    "column": 63
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 4444,
                                  "end": 4457,
                                  "loc": {
                                    "start": {
                                      "line": 146,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 146,
                                      "column": 49
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 4444,
                                    "end": 4448,
                                    "loc": {
                                      "start": {
                                        "line": 146,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 146,
                                        "column": 40
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 4449,
                                    "end": 4457,
                                    "loc": {
                                      "start": {
                                        "line": 146,
                                        "column": 41
                                      },
                                      "end": {
                                        "line": 146,
                                        "column": 49
                                      }
                                    },
                                    "name": "sketcher"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 4458,
                                  "end": 4471,
                                  "loc": {
                                    "start": {
                                      "line": 146,
                                      "column": 50
                                    },
                                    "end": {
                                      "line": 146,
                                      "column": 63
                                    }
                                  },
                                  "name": "currentSketch"
                                },
                                "computed": false
                              }
                            }
                          },
                          {
                            "type": "Literal",
                            "start": 4473,
                            "end": 4499,
                            "loc": {
                              "start": {
                                "line": 146,
                                "column": 65
                              },
                              "end": {
                                "line": 146,
                                "column": 91
                              }
                            },
                            "value": "Deselecting wrong sketch",
                            "rawValue": "Deselecting wrong sketch",
                            "raw": "\"Deselecting wrong sketch\""
                          }
                        ]
                      }
                    },
                    {
                      "type": "IfStatement",
                      "start": 4510,
                      "end": 4670,
                      "loc": {
                        "start": {
                          "line": 147,
                          "column": 8
                        },
                        "end": {
                          "line": 150,
                          "column": 49
                        }
                      },
                      "test": {
                        "type": "Identifier",
                        "start": 4514,
                        "end": 4521,
                        "loc": {
                          "start": {
                            "line": 147,
                            "column": 12
                          },
                          "end": {
                            "line": 147,
                            "column": 19
                          }
                        },
                        "name": "byClick"
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 4535,
                        "end": 4607,
                        "loc": {
                          "start": {
                            "line": 148,
                            "column": 12
                          },
                          "end": {
                            "line": 148,
                            "column": 84
                          }
                        },
                        "expression": {
                          "type": "AwaitExpression",
                          "start": 4535,
                          "end": 4606,
                          "loc": {
                            "start": {
                              "line": 148,
                              "column": 12
                            },
                            "end": {
                              "line": 148,
                              "column": 83
                            }
                          },
                          "all": false,
                          "argument": {
                            "type": "CallExpression",
                            "start": 4541,
                            "end": 4606,
                            "loc": {
                              "start": {
                                "line": 148,
                                "column": 18
                              },
                              "end": {
                                "line": 148,
                                "column": 83
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 4541,
                              "end": 4577,
                              "loc": {
                                "start": {
                                  "line": 148,
                                  "column": 18
                                },
                                "end": {
                                  "line": 148,
                                  "column": 54
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 4541,
                                "end": 4554,
                                "loc": {
                                  "start": {
                                    "line": 148,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 148,
                                    "column": 31
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 4541,
                                  "end": 4545,
                                  "loc": {
                                    "start": {
                                      "line": 148,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 148,
                                      "column": 22
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 4546,
                                  "end": 4554,
                                  "loc": {
                                    "start": {
                                      "line": 148,
                                      "column": 23
                                    },
                                    "end": {
                                      "line": 148,
                                      "column": 31
                                    }
                                  },
                                  "name": "sketcher"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 4555,
                                "end": 4577,
                                "loc": {
                                  "start": {
                                    "line": 148,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 148,
                                    "column": 54
                                  }
                                },
                                "name": "sketchAreaRightClicked"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 4578,
                                "end": 4605,
                                "loc": {
                                  "start": {
                                    "line": 148,
                                    "column": 55
                                  },
                                  "end": {
                                    "line": 148,
                                    "column": 82
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 4578,
                                  "end": 4591,
                                  "loc": {
                                    "start": {
                                      "line": 148,
                                      "column": 55
                                    },
                                    "end": {
                                      "line": 148,
                                      "column": 68
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 4578,
                                    "end": 4582,
                                    "loc": {
                                      "start": {
                                        "line": 148,
                                        "column": 55
                                      },
                                      "end": {
                                        "line": 148,
                                        "column": 59
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 4583,
                                    "end": 4591,
                                    "loc": {
                                      "start": {
                                        "line": 148,
                                        "column": 60
                                      },
                                      "end": {
                                        "line": 148,
                                        "column": 68
                                      }
                                    },
                                    "name": "sketcher"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 4592,
                                  "end": 4605,
                                  "loc": {
                                    "start": {
                                      "line": 148,
                                      "column": 69
                                    },
                                    "end": {
                                      "line": 148,
                                      "column": 82
                                    }
                                  },
                                  "name": "currentSketch"
                                },
                                "computed": false
                              }
                            ]
                          }
                        }
                      },
                      "alternate": {
                        "type": "ExpressionStatement",
                        "start": 4633,
                        "end": 4670,
                        "loc": {
                          "start": {
                            "line": 150,
                            "column": 12
                          },
                          "end": {
                            "line": 150,
                            "column": 49
                          }
                        },
                        "expression": {
                          "type": "AwaitExpression",
                          "start": 4633,
                          "end": 4669,
                          "loc": {
                            "start": {
                              "line": 150,
                              "column": 12
                            },
                            "end": {
                              "line": 150,
                              "column": 48
                            }
                          },
                          "all": false,
                          "argument": {
                            "type": "CallExpression",
                            "start": 4639,
                            "end": 4669,
                            "loc": {
                              "start": {
                                "line": 150,
                                "column": 18
                              },
                              "end": {
                                "line": 150,
                                "column": 48
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 4639,
                              "end": 4667,
                              "loc": {
                                "start": {
                                  "line": 150,
                                  "column": 18
                                },
                                "end": {
                                  "line": 150,
                                  "column": 46
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 4639,
                                "end": 4652,
                                "loc": {
                                  "start": {
                                    "line": 150,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 150,
                                    "column": 31
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 4639,
                                  "end": 4643,
                                  "loc": {
                                    "start": {
                                      "line": 150,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 150,
                                      "column": 22
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 4644,
                                  "end": 4652,
                                  "loc": {
                                    "start": {
                                      "line": 150,
                                      "column": 23
                                    },
                                    "end": {
                                      "line": 150,
                                      "column": 31
                                    }
                                  },
                                  "name": "sketcher"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 4653,
                                "end": 4667,
                                "loc": {
                                  "start": {
                                    "line": 150,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 150,
                                    "column": 46
                                  }
                                },
                                "name": "deselectSketch"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      }
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": "emulating sketcher global buttons (tools, handlers, etc)",
                  "start": 4682,
                  "end": 4740,
                  "loc": {
                    "start": {
                      "line": 153,
                      "column": 4
                    },
                    "end": {
                      "line": 153,
                      "column": 62
                    }
                  },
                  "range": [
                    4682,
                    4740
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 4745,
              "end": 4840,
              "loc": {
                "start": {
                  "line": 154,
                  "column": 4
                },
                "end": {
                  "line": 156,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 4751,
                "end": 4761,
                "loc": {
                  "start": {
                    "line": 154,
                    "column": 10
                  },
                  "end": {
                    "line": 154,
                    "column": 20
                  }
                },
                "name": "chooseTool"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 4761,
                "end": 4840,
                "loc": {
                  "start": {
                    "line": 154,
                    "column": 20
                  },
                  "end": {
                    "line": 156,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 4762,
                    "end": 4770,
                    "loc": {
                      "start": {
                        "line": 154,
                        "column": 21
                      },
                      "end": {
                        "line": 154,
                        "column": 29
                      }
                    },
                    "name": "toolName"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 4772,
                  "end": 4840,
                  "loc": {
                    "start": {
                      "line": 154,
                      "column": 31
                    },
                    "end": {
                      "line": 156,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 4782,
                      "end": 4834,
                      "loc": {
                        "start": {
                          "line": 155,
                          "column": 8
                        },
                        "end": {
                          "line": 155,
                          "column": 60
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 4782,
                        "end": 4833,
                        "loc": {
                          "start": {
                            "line": 155,
                            "column": 8
                          },
                          "end": {
                            "line": 155,
                            "column": 59
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 4788,
                          "end": 4833,
                          "loc": {
                            "start": {
                              "line": 155,
                              "column": 14
                            },
                            "end": {
                              "line": 155,
                              "column": 59
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 4788,
                            "end": 4812,
                            "loc": {
                              "start": {
                                "line": 155,
                                "column": 14
                              },
                              "end": {
                                "line": 155,
                                "column": 38
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 4788,
                              "end": 4801,
                              "loc": {
                                "start": {
                                  "line": 155,
                                  "column": 14
                                },
                                "end": {
                                  "line": 155,
                                  "column": 27
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 4788,
                                "end": 4792,
                                "loc": {
                                  "start": {
                                    "line": 155,
                                    "column": 14
                                  },
                                  "end": {
                                    "line": 155,
                                    "column": 18
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 4793,
                                "end": 4801,
                                "loc": {
                                  "start": {
                                    "line": 155,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 155,
                                    "column": 27
                                  }
                                },
                                "name": "sketcher"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 4802,
                              "end": 4812,
                              "loc": {
                                "start": {
                                  "line": 155,
                                  "column": 28
                                },
                                "end": {
                                  "line": 155,
                                  "column": 38
                                }
                              },
                              "name": "chooseTool"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "LogicalExpression",
                              "start": 4813,
                              "end": 4832,
                              "loc": {
                                "start": {
                                  "line": 155,
                                  "column": 39
                                },
                                "end": {
                                  "line": 155,
                                  "column": 58
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 4813,
                                "end": 4821,
                                "loc": {
                                  "start": {
                                    "line": 155,
                                    "column": 39
                                  },
                                  "end": {
                                    "line": 155,
                                    "column": 47
                                  }
                                },
                                "name": "toolName"
                              },
                              "operator": "||",
                              "right": {
                                "type": "Literal",
                                "start": 4825,
                                "end": 4832,
                                "loc": {
                                  "start": {
                                    "line": 155,
                                    "column": 51
                                  },
                                  "end": {
                                    "line": 155,
                                    "column": 58
                                  }
                                },
                                "value": "empty",
                                "rawValue": "empty",
                                "raw": "'empty'"
                              }
                            }
                          ]
                        }
                      }
                    }
                  ]
                }
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": "emulating sketcher global buttons (tools, handlers, etc)",
                  "start": 4682,
                  "end": 4740,
                  "loc": {
                    "start": {
                      "line": 153,
                      "column": 4
                    },
                    "end": {
                      "line": 153,
                      "column": 62
                    }
                  },
                  "range": [
                    4682,
                    4740
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 4845,
              "end": 4925,
              "loc": {
                "start": {
                  "line": 157,
                  "column": 4
                },
                "end": {
                  "line": 159,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 4851,
                "end": 4867,
                "loc": {
                  "start": {
                    "line": 157,
                    "column": 10
                  },
                  "end": {
                    "line": 157,
                    "column": 26
                  }
                },
                "name": "solveConstraints"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 4867,
                "end": 4925,
                "loc": {
                  "start": {
                    "line": 157,
                    "column": 26
                  },
                  "end": {
                    "line": 159,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 4870,
                  "end": 4925,
                  "loc": {
                    "start": {
                      "line": 157,
                      "column": 29
                    },
                    "end": {
                      "line": 159,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 4880,
                      "end": 4919,
                      "loc": {
                        "start": {
                          "line": 158,
                          "column": 8
                        },
                        "end": {
                          "line": 158,
                          "column": 47
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 4880,
                        "end": 4918,
                        "loc": {
                          "start": {
                            "line": 158,
                            "column": 8
                          },
                          "end": {
                            "line": 158,
                            "column": 46
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 4886,
                          "end": 4918,
                          "loc": {
                            "start": {
                              "line": 158,
                              "column": 14
                            },
                            "end": {
                              "line": 158,
                              "column": 46
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 4886,
                            "end": 4916,
                            "loc": {
                              "start": {
                                "line": 158,
                                "column": 14
                              },
                              "end": {
                                "line": 158,
                                "column": 44
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 4886,
                              "end": 4899,
                              "loc": {
                                "start": {
                                  "line": 158,
                                  "column": 14
                                },
                                "end": {
                                  "line": 158,
                                  "column": 27
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 4886,
                                "end": 4890,
                                "loc": {
                                  "start": {
                                    "line": 158,
                                    "column": 14
                                  },
                                  "end": {
                                    "line": 158,
                                    "column": 18
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 4891,
                                "end": 4899,
                                "loc": {
                                  "start": {
                                    "line": 158,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 158,
                                    "column": 27
                                  }
                                },
                                "name": "sketcher"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 4900,
                              "end": 4916,
                              "loc": {
                                "start": {
                                  "line": 158,
                                  "column": 28
                                },
                                "end": {
                                  "line": 158,
                                  "column": 44
                                }
                              },
                              "name": "solveConstraints"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 4930,
              "end": 5019,
              "loc": {
                "start": {
                  "line": 160,
                  "column": 4
                },
                "end": {
                  "line": 162,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 4936,
                "end": 4950,
                "loc": {
                  "start": {
                    "line": 160,
                    "column": 10
                  },
                  "end": {
                    "line": 160,
                    "column": 24
                  }
                },
                "name": "setIncremental"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 4950,
                "end": 5019,
                "loc": {
                  "start": {
                    "line": 160,
                    "column": 24
                  },
                  "end": {
                    "line": 162,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 4951,
                    "end": 4955,
                    "loc": {
                      "start": {
                        "line": 160,
                        "column": 25
                      },
                      "end": {
                        "line": 160,
                        "column": 29
                      }
                    },
                    "name": "flag"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 4957,
                  "end": 5019,
                  "loc": {
                    "start": {
                      "line": 160,
                      "column": 31
                    },
                    "end": {
                      "line": 162,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 4967,
                      "end": 5013,
                      "loc": {
                        "start": {
                          "line": 161,
                          "column": 8
                        },
                        "end": {
                          "line": 161,
                          "column": 54
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 4967,
                        "end": 5012,
                        "loc": {
                          "start": {
                            "line": 161,
                            "column": 8
                          },
                          "end": {
                            "line": 161,
                            "column": 53
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 4973,
                          "end": 5012,
                          "loc": {
                            "start": {
                              "line": 161,
                              "column": 14
                            },
                            "end": {
                              "line": 161,
                              "column": 53
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 4973,
                            "end": 5006,
                            "loc": {
                              "start": {
                                "line": 161,
                                "column": 14
                              },
                              "end": {
                                "line": 161,
                                "column": 47
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 4973,
                              "end": 4986,
                              "loc": {
                                "start": {
                                  "line": 161,
                                  "column": 14
                                },
                                "end": {
                                  "line": 161,
                                  "column": 27
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 4973,
                                "end": 4977,
                                "loc": {
                                  "start": {
                                    "line": 161,
                                    "column": 14
                                  },
                                  "end": {
                                    "line": 161,
                                    "column": 18
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 4978,
                                "end": 4986,
                                "loc": {
                                  "start": {
                                    "line": 161,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 161,
                                    "column": 27
                                  }
                                },
                                "name": "sketcher"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 4987,
                              "end": 5006,
                              "loc": {
                                "start": {
                                  "line": 161,
                                  "column": 28
                                },
                                "end": {
                                  "line": 161,
                                  "column": 47
                                }
                              },
                              "name": "setIncrementalLevel"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 5007,
                              "end": 5011,
                              "loc": {
                                "start": {
                                  "line": 161,
                                  "column": 48
                                },
                                "end": {
                                  "line": 161,
                                  "column": 52
                                }
                              },
                              "name": "flag"
                            }
                          ]
                        }
                      }
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": "tracking which objects were added/removed during lambda execution",
                  "start": 5025,
                  "end": 5092,
                  "loc": {
                    "start": {
                      "line": 164,
                      "column": 4
                    },
                    "end": {
                      "line": 164,
                      "column": 71
                    }
                  },
                  "range": [
                    5025,
                    5092
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 5097,
              "end": 5405,
              "loc": {
                "start": {
                  "line": 165,
                  "column": 4
                },
                "end": {
                  "line": 174,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 5103,
                "end": 5111,
                "loc": {
                  "start": {
                    "line": 165,
                    "column": 10
                  },
                  "end": {
                    "line": 165,
                    "column": 18
                  }
                },
                "name": "trackAny"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 5111,
                "end": 5405,
                "loc": {
                  "start": {
                    "line": 165,
                    "column": 18
                  },
                  "end": {
                    "line": 174,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 5112,
                    "end": 5118,
                    "loc": {
                      "start": {
                        "line": 165,
                        "column": 19
                      },
                      "end": {
                        "line": 165,
                        "column": 25
                      }
                    },
                    "name": "lambda"
                  },
                  {
                    "type": "Identifier",
                    "start": 5120,
                    "end": 5126,
                    "loc": {
                      "start": {
                        "line": 165,
                        "column": 27
                      },
                      "end": {
                        "line": 165,
                        "column": 33
                      }
                    },
                    "name": "sketch"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 5128,
                  "end": 5405,
                  "loc": {
                    "start": {
                      "line": 165,
                      "column": 35
                    },
                    "end": {
                      "line": 174,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 5138,
                      "end": 5200,
                      "loc": {
                        "start": {
                          "line": 166,
                          "column": 8
                        },
                        "end": {
                          "line": 167,
                          "column": 49
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 5142,
                        "end": 5149,
                        "loc": {
                          "start": {
                            "line": 166,
                            "column": 12
                          },
                          "end": {
                            "line": 166,
                            "column": 19
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "Identifier",
                          "start": 5143,
                          "end": 5149,
                          "loc": {
                            "start": {
                              "line": 166,
                              "column": 13
                            },
                            "end": {
                              "line": 166,
                              "column": 19
                            }
                          },
                          "name": "sketch"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 5163,
                        "end": 5200,
                        "loc": {
                          "start": {
                            "line": 167,
                            "column": 12
                          },
                          "end": {
                            "line": 167,
                            "column": 49
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 5163,
                          "end": 5199,
                          "loc": {
                            "start": {
                              "line": 167,
                              "column": 12
                            },
                            "end": {
                              "line": 167,
                              "column": 48
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "Identifier",
                            "start": 5163,
                            "end": 5169,
                            "loc": {
                              "start": {
                                "line": 167,
                                "column": 12
                              },
                              "end": {
                                "line": 167,
                                "column": 18
                              }
                            },
                            "name": "sketch"
                          },
                          "right": {
                            "type": "MemberExpression",
                            "start": 5172,
                            "end": 5199,
                            "loc": {
                              "start": {
                                "line": 167,
                                "column": 21
                              },
                              "end": {
                                "line": 167,
                                "column": 48
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 5172,
                              "end": 5185,
                              "loc": {
                                "start": {
                                  "line": 167,
                                  "column": 21
                                },
                                "end": {
                                  "line": 167,
                                  "column": 34
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 5172,
                                "end": 5176,
                                "loc": {
                                  "start": {
                                    "line": 167,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 167,
                                    "column": 25
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 5177,
                                "end": 5185,
                                "loc": {
                                  "start": {
                                    "line": 167,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 167,
                                    "column": 34
                                  }
                                },
                                "name": "sketcher"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5186,
                              "end": 5199,
                              "loc": {
                                "start": {
                                  "line": 167,
                                  "column": 35
                                },
                                "end": {
                                  "line": 167,
                                  "column": 48
                                }
                              },
                              "name": "currentSketch"
                            },
                            "computed": false
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 5209,
                      "end": 5252,
                      "loc": {
                        "start": {
                          "line": 168,
                          "column": 8
                        },
                        "end": {
                          "line": 168,
                          "column": 51
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 5213,
                          "end": 5251,
                          "loc": {
                            "start": {
                              "line": 168,
                              "column": 12
                            },
                            "end": {
                              "line": 168,
                              "column": 50
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 5213,
                            "end": 5220,
                            "loc": {
                              "start": {
                                "line": 168,
                                "column": 12
                              },
                              "end": {
                                "line": 168,
                                "column": 19
                              }
                            },
                            "name": "tracker"
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 5223,
                            "end": 5251,
                            "loc": {
                              "start": {
                                "line": 168,
                                "column": 22
                              },
                              "end": {
                                "line": 168,
                                "column": 50
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 5227,
                              "end": 5243,
                              "loc": {
                                "start": {
                                  "line": 168,
                                  "column": 26
                                },
                                "end": {
                                  "line": 168,
                                  "column": 42
                                }
                              },
                              "name": "AddRemoveTracker"
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 5244,
                                "end": 5250,
                                "loc": {
                                  "start": {
                                    "line": 168,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 168,
                                    "column": 49
                                  }
                                },
                                "name": "sketch"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "let"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 5261,
                      "end": 5278,
                      "loc": {
                        "start": {
                          "line": 169,
                          "column": 8
                        },
                        "end": {
                          "line": 169,
                          "column": 25
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 5261,
                        "end": 5277,
                        "loc": {
                          "start": {
                            "line": 169,
                            "column": 8
                          },
                          "end": {
                            "line": 169,
                            "column": 24
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 5261,
                          "end": 5275,
                          "loc": {
                            "start": {
                              "line": 169,
                              "column": 8
                            },
                            "end": {
                              "line": 169,
                              "column": 22
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 5261,
                            "end": 5268,
                            "loc": {
                              "start": {
                                "line": 169,
                                "column": 8
                              },
                              "end": {
                                "line": 169,
                                "column": 15
                              }
                            },
                            "name": "tracker"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 5269,
                            "end": 5275,
                            "loc": {
                              "start": {
                                "line": 169,
                                "column": 16
                              },
                              "end": {
                                "line": 169,
                                "column": 22
                              }
                            },
                            "name": "listen"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 5287,
                      "end": 5302,
                      "loc": {
                        "start": {
                          "line": 170,
                          "column": 8
                        },
                        "end": {
                          "line": 170,
                          "column": 23
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 5287,
                        "end": 5301,
                        "loc": {
                          "start": {
                            "line": 170,
                            "column": 8
                          },
                          "end": {
                            "line": 170,
                            "column": 22
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 5293,
                          "end": 5301,
                          "loc": {
                            "start": {
                              "line": 170,
                              "column": 14
                            },
                            "end": {
                              "line": 170,
                              "column": 22
                            }
                          },
                          "callee": {
                            "type": "Identifier",
                            "start": 5293,
                            "end": 5299,
                            "loc": {
                              "start": {
                                "line": 170,
                                "column": 14
                              },
                              "end": {
                                "line": 170,
                                "column": 20
                              }
                            },
                            "name": "lambda"
                          },
                          "arguments": []
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 5311,
                      "end": 5328,
                      "loc": {
                        "start": {
                          "line": 171,
                          "column": 8
                        },
                        "end": {
                          "line": 171,
                          "column": 25
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 5311,
                        "end": 5327,
                        "loc": {
                          "start": {
                            "line": 171,
                            "column": 8
                          },
                          "end": {
                            "line": 171,
                            "column": 24
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 5311,
                          "end": 5325,
                          "loc": {
                            "start": {
                              "line": 171,
                              "column": 8
                            },
                            "end": {
                              "line": 171,
                              "column": 22
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 5311,
                            "end": 5318,
                            "loc": {
                              "start": {
                                "line": 171,
                                "column": 8
                              },
                              "end": {
                                "line": 171,
                                "column": 15
                              }
                            },
                            "name": "tracker"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 5319,
                            "end": 5325,
                            "loc": {
                              "start": {
                                "line": 171,
                                "column": 16
                              },
                              "end": {
                                "line": 171,
                                "column": 22
                              }
                            },
                            "name": "ignore"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 5337,
                      "end": 5375,
                      "loc": {
                        "start": {
                          "line": 172,
                          "column": 8
                        },
                        "end": {
                          "line": 172,
                          "column": 46
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 5341,
                          "end": 5374,
                          "loc": {
                            "start": {
                              "line": 172,
                              "column": 12
                            },
                            "end": {
                              "line": 172,
                              "column": 45
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 5341,
                            "end": 5348,
                            "loc": {
                              "start": {
                                "line": 172,
                                "column": 12
                              },
                              "end": {
                                "line": 172,
                                "column": 19
                              }
                            },
                            "name": "changes"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 5351,
                            "end": 5374,
                            "loc": {
                              "start": {
                                "line": 172,
                                "column": 22
                              },
                              "end": {
                                "line": 172,
                                "column": 45
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 5351,
                              "end": 5372,
                              "loc": {
                                "start": {
                                  "line": 172,
                                  "column": 22
                                },
                                "end": {
                                  "line": 172,
                                  "column": 43
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 5351,
                                "end": 5358,
                                "loc": {
                                  "start": {
                                    "line": 172,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 172,
                                    "column": 29
                                  }
                                },
                                "name": "tracker"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 5359,
                                "end": 5372,
                                "loc": {
                                  "start": {
                                    "line": 172,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 172,
                                    "column": 43
                                  }
                                },
                                "name": "getAllChanges"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "let"
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 5384,
                      "end": 5399,
                      "loc": {
                        "start": {
                          "line": 173,
                          "column": 8
                        },
                        "end": {
                          "line": 173,
                          "column": 23
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 5391,
                        "end": 5398,
                        "loc": {
                          "start": {
                            "line": 173,
                            "column": 15
                          },
                          "end": {
                            "line": 173,
                            "column": 22
                          }
                        },
                        "name": "changes"
                      }
                    }
                  ]
                }
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": "tracking which objects were added/removed during lambda execution",
                  "start": 5025,
                  "end": 5092,
                  "loc": {
                    "start": {
                      "line": 164,
                      "column": 4
                    },
                    "end": {
                      "line": 164,
                      "column": 71
                    }
                  },
                  "range": [
                    5025,
                    5092
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 5410,
              "end": 5634,
              "loc": {
                "start": {
                  "line": 175,
                  "column": 4
                },
                "end": {
                  "line": 179,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 5416,
                "end": 5426,
                "loc": {
                  "start": {
                    "line": 175,
                    "column": 10
                  },
                  "end": {
                    "line": 175,
                    "column": 20
                  }
                },
                "name": "trackAdded"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 5426,
                "end": 5634,
                "loc": {
                  "start": {
                    "line": 175,
                    "column": 20
                  },
                  "end": {
                    "line": 179,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 5427,
                    "end": 5433,
                    "loc": {
                      "start": {
                        "line": 175,
                        "column": 21
                      },
                      "end": {
                        "line": 175,
                        "column": 27
                      }
                    },
                    "name": "lambda"
                  },
                  {
                    "type": "Identifier",
                    "start": 5435,
                    "end": 5441,
                    "loc": {
                      "start": {
                        "line": 175,
                        "column": 29
                      },
                      "end": {
                        "line": 175,
                        "column": 35
                      }
                    },
                    "name": "sketch"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 5443,
                  "end": 5634,
                  "loc": {
                    "start": {
                      "line": 175,
                      "column": 37
                    },
                    "end": {
                      "line": 179,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 5453,
                      "end": 5503,
                      "loc": {
                        "start": {
                          "line": 176,
                          "column": 8
                        },
                        "end": {
                          "line": 176,
                          "column": 58
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 5457,
                          "end": 5502,
                          "loc": {
                            "start": {
                              "line": 176,
                              "column": 12
                            },
                            "end": {
                              "line": 176,
                              "column": 57
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 5457,
                            "end": 5464,
                            "loc": {
                              "start": {
                                "line": 176,
                                "column": 12
                              },
                              "end": {
                                "line": 176,
                                "column": 19
                              }
                            },
                            "name": "changes"
                          },
                          "init": {
                            "type": "AwaitExpression",
                            "start": 5467,
                            "end": 5502,
                            "loc": {
                              "start": {
                                "line": 176,
                                "column": 22
                              },
                              "end": {
                                "line": 176,
                                "column": 57
                              }
                            },
                            "all": false,
                            "argument": {
                              "type": "CallExpression",
                              "start": 5473,
                              "end": 5502,
                              "loc": {
                                "start": {
                                  "line": 176,
                                  "column": 28
                                },
                                "end": {
                                  "line": 176,
                                  "column": 57
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 5473,
                                "end": 5486,
                                "loc": {
                                  "start": {
                                    "line": 176,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 176,
                                    "column": 41
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 5473,
                                  "end": 5477,
                                  "loc": {
                                    "start": {
                                      "line": 176,
                                      "column": 28
                                    },
                                    "end": {
                                      "line": 176,
                                      "column": 32
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 5478,
                                  "end": 5486,
                                  "loc": {
                                    "start": {
                                      "line": 176,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 176,
                                      "column": 41
                                    }
                                  },
                                  "name": "trackAny"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 5487,
                                  "end": 5493,
                                  "loc": {
                                    "start": {
                                      "line": 176,
                                      "column": 42
                                    },
                                    "end": {
                                      "line": 176,
                                      "column": 48
                                    }
                                  },
                                  "name": "lambda"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 5495,
                                  "end": 5501,
                                  "loc": {
                                    "start": {
                                      "line": 176,
                                      "column": 50
                                    },
                                    "end": {
                                      "line": 176,
                                      "column": 56
                                    }
                                  },
                                  "name": "sketch"
                                }
                              ]
                            }
                          }
                        }
                      ],
                      "kind": "let"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 5512,
                      "end": 5580,
                      "loc": {
                        "start": {
                          "line": 177,
                          "column": 8
                        },
                        "end": {
                          "line": 177,
                          "column": 76
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 5512,
                        "end": 5579,
                        "loc": {
                          "start": {
                            "line": 177,
                            "column": 8
                          },
                          "end": {
                            "line": 177,
                            "column": 75
                          }
                        },
                        "callee": {
                          "type": "Identifier",
                          "start": 5512,
                          "end": 5517,
                          "loc": {
                            "start": {
                              "line": 177,
                              "column": 8
                            },
                            "end": {
                              "line": 177,
                              "column": 13
                            }
                          },
                          "name": "check"
                        },
                        "arguments": [
                          {
                            "type": "BinaryExpression",
                            "start": 5518,
                            "end": 5546,
                            "loc": {
                              "start": {
                                "line": 177,
                                "column": 14
                              },
                              "end": {
                                "line": 177,
                                "column": 42
                              }
                            },
                            "left": {
                              "type": "MemberExpression",
                              "start": 5518,
                              "end": 5540,
                              "loc": {
                                "start": {
                                  "line": 177,
                                  "column": 14
                                },
                                "end": {
                                  "line": 177,
                                  "column": 36
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 5518,
                                "end": 5533,
                                "loc": {
                                  "start": {
                                    "line": 177,
                                    "column": 14
                                  },
                                  "end": {
                                    "line": 177,
                                    "column": 29
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 5518,
                                  "end": 5525,
                                  "loc": {
                                    "start": {
                                      "line": 177,
                                      "column": 14
                                    },
                                    "end": {
                                      "line": 177,
                                      "column": 21
                                    }
                                  },
                                  "name": "changes"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 5526,
                                  "end": 5533,
                                  "loc": {
                                    "start": {
                                      "line": 177,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 177,
                                      "column": 29
                                    }
                                  },
                                  "name": "removed"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 5534,
                                "end": 5540,
                                "loc": {
                                  "start": {
                                    "line": 177,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 177,
                                    "column": 36
                                  }
                                },
                                "name": "length"
                              },
                              "computed": false
                            },
                            "operator": "===",
                            "right": {
                              "type": "Literal",
                              "start": 5545,
                              "end": 5546,
                              "loc": {
                                "start": {
                                  "line": 177,
                                  "column": 41
                                },
                                "end": {
                                  "line": 177,
                                  "column": 42
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            }
                          },
                          {
                            "type": "Literal",
                            "start": 5548,
                            "end": 5578,
                            "loc": {
                              "start": {
                                "line": 177,
                                "column": 44
                              },
                              "end": {
                                "line": 177,
                                "column": 74
                              }
                            },
                            "value": "Element removed unexpectedly",
                            "rawValue": "Element removed unexpectedly",
                            "raw": "\"Element removed unexpectedly\""
                          }
                        ]
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 5589,
                      "end": 5628,
                      "loc": {
                        "start": {
                          "line": 178,
                          "column": 8
                        },
                        "end": {
                          "line": 178,
                          "column": 47
                        }
                      },
                      "argument": {
                        "type": "NewExpression",
                        "start": 5596,
                        "end": 5627,
                        "loc": {
                          "start": {
                            "line": 178,
                            "column": 15
                          },
                          "end": {
                            "line": 178,
                            "column": 46
                          }
                        },
                        "callee": {
                          "type": "Identifier",
                          "start": 5600,
                          "end": 5612,
                          "loc": {
                            "start": {
                              "line": 178,
                              "column": 19
                            },
                            "end": {
                              "line": 178,
                              "column": 31
                            }
                          },
                          "name": "ChangesArray"
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 5613,
                            "end": 5626,
                            "loc": {
                              "start": {
                                "line": 178,
                                "column": 32
                              },
                              "end": {
                                "line": 178,
                                "column": 45
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 5613,
                              "end": 5620,
                              "loc": {
                                "start": {
                                  "line": 178,
                                  "column": 32
                                },
                                "end": {
                                  "line": 178,
                                  "column": 39
                                }
                              },
                              "name": "changes"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5621,
                              "end": 5626,
                              "loc": {
                                "start": {
                                  "line": 178,
                                  "column": 40
                                },
                                "end": {
                                  "line": 178,
                                  "column": 45
                                }
                              },
                              "name": "added"
                            },
                            "computed": false
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 5639,
              "end": 5863,
              "loc": {
                "start": {
                  "line": 180,
                  "column": 4
                },
                "end": {
                  "line": 184,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 5645,
                "end": 5657,
                "loc": {
                  "start": {
                    "line": 180,
                    "column": 10
                  },
                  "end": {
                    "line": 180,
                    "column": 22
                  }
                },
                "name": "trackRemoved"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 5657,
                "end": 5863,
                "loc": {
                  "start": {
                    "line": 180,
                    "column": 22
                  },
                  "end": {
                    "line": 184,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 5658,
                    "end": 5664,
                    "loc": {
                      "start": {
                        "line": 180,
                        "column": 23
                      },
                      "end": {
                        "line": 180,
                        "column": 29
                      }
                    },
                    "name": "lambda"
                  },
                  {
                    "type": "Identifier",
                    "start": 5666,
                    "end": 5672,
                    "loc": {
                      "start": {
                        "line": 180,
                        "column": 31
                      },
                      "end": {
                        "line": 180,
                        "column": 37
                      }
                    },
                    "name": "sketch"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 5674,
                  "end": 5863,
                  "loc": {
                    "start": {
                      "line": 180,
                      "column": 39
                    },
                    "end": {
                      "line": 184,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 5684,
                      "end": 5734,
                      "loc": {
                        "start": {
                          "line": 181,
                          "column": 8
                        },
                        "end": {
                          "line": 181,
                          "column": 58
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 5688,
                          "end": 5733,
                          "loc": {
                            "start": {
                              "line": 181,
                              "column": 12
                            },
                            "end": {
                              "line": 181,
                              "column": 57
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 5688,
                            "end": 5695,
                            "loc": {
                              "start": {
                                "line": 181,
                                "column": 12
                              },
                              "end": {
                                "line": 181,
                                "column": 19
                              }
                            },
                            "name": "changes"
                          },
                          "init": {
                            "type": "AwaitExpression",
                            "start": 5698,
                            "end": 5733,
                            "loc": {
                              "start": {
                                "line": 181,
                                "column": 22
                              },
                              "end": {
                                "line": 181,
                                "column": 57
                              }
                            },
                            "all": false,
                            "argument": {
                              "type": "CallExpression",
                              "start": 5704,
                              "end": 5733,
                              "loc": {
                                "start": {
                                  "line": 181,
                                  "column": 28
                                },
                                "end": {
                                  "line": 181,
                                  "column": 57
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 5704,
                                "end": 5717,
                                "loc": {
                                  "start": {
                                    "line": 181,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 181,
                                    "column": 41
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 5704,
                                  "end": 5708,
                                  "loc": {
                                    "start": {
                                      "line": 181,
                                      "column": 28
                                    },
                                    "end": {
                                      "line": 181,
                                      "column": 32
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 5709,
                                  "end": 5717,
                                  "loc": {
                                    "start": {
                                      "line": 181,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 181,
                                      "column": 41
                                    }
                                  },
                                  "name": "trackAny"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 5718,
                                  "end": 5724,
                                  "loc": {
                                    "start": {
                                      "line": 181,
                                      "column": 42
                                    },
                                    "end": {
                                      "line": 181,
                                      "column": 48
                                    }
                                  },
                                  "name": "lambda"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 5726,
                                  "end": 5732,
                                  "loc": {
                                    "start": {
                                      "line": 181,
                                      "column": 50
                                    },
                                    "end": {
                                      "line": 181,
                                      "column": 56
                                    }
                                  },
                                  "name": "sketch"
                                }
                              ]
                            }
                          }
                        }
                      ],
                      "kind": "let"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 5743,
                      "end": 5807,
                      "loc": {
                        "start": {
                          "line": 182,
                          "column": 8
                        },
                        "end": {
                          "line": 182,
                          "column": 72
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 5743,
                        "end": 5806,
                        "loc": {
                          "start": {
                            "line": 182,
                            "column": 8
                          },
                          "end": {
                            "line": 182,
                            "column": 71
                          }
                        },
                        "callee": {
                          "type": "Identifier",
                          "start": 5743,
                          "end": 5748,
                          "loc": {
                            "start": {
                              "line": 182,
                              "column": 8
                            },
                            "end": {
                              "line": 182,
                              "column": 13
                            }
                          },
                          "name": "check"
                        },
                        "arguments": [
                          {
                            "type": "BinaryExpression",
                            "start": 5749,
                            "end": 5775,
                            "loc": {
                              "start": {
                                "line": 182,
                                "column": 14
                              },
                              "end": {
                                "line": 182,
                                "column": 40
                              }
                            },
                            "left": {
                              "type": "MemberExpression",
                              "start": 5749,
                              "end": 5769,
                              "loc": {
                                "start": {
                                  "line": 182,
                                  "column": 14
                                },
                                "end": {
                                  "line": 182,
                                  "column": 34
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 5749,
                                "end": 5762,
                                "loc": {
                                  "start": {
                                    "line": 182,
                                    "column": 14
                                  },
                                  "end": {
                                    "line": 182,
                                    "column": 27
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 5749,
                                  "end": 5756,
                                  "loc": {
                                    "start": {
                                      "line": 182,
                                      "column": 14
                                    },
                                    "end": {
                                      "line": 182,
                                      "column": 21
                                    }
                                  },
                                  "name": "changes"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 5757,
                                  "end": 5762,
                                  "loc": {
                                    "start": {
                                      "line": 182,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 182,
                                      "column": 27
                                    }
                                  },
                                  "name": "added"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 5763,
                                "end": 5769,
                                "loc": {
                                  "start": {
                                    "line": 182,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 182,
                                    "column": 34
                                  }
                                },
                                "name": "length"
                              },
                              "computed": false
                            },
                            "operator": "===",
                            "right": {
                              "type": "Literal",
                              "start": 5774,
                              "end": 5775,
                              "loc": {
                                "start": {
                                  "line": 182,
                                  "column": 39
                                },
                                "end": {
                                  "line": 182,
                                  "column": 40
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            }
                          },
                          {
                            "type": "Literal",
                            "start": 5777,
                            "end": 5805,
                            "loc": {
                              "start": {
                                "line": 182,
                                "column": 42
                              },
                              "end": {
                                "line": 182,
                                "column": 70
                              }
                            },
                            "value": "Element added unexpectedly",
                            "rawValue": "Element added unexpectedly",
                            "raw": "\"Element added unexpectedly\""
                          }
                        ]
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 5816,
                      "end": 5857,
                      "loc": {
                        "start": {
                          "line": 183,
                          "column": 8
                        },
                        "end": {
                          "line": 183,
                          "column": 49
                        }
                      },
                      "argument": {
                        "type": "NewExpression",
                        "start": 5823,
                        "end": 5856,
                        "loc": {
                          "start": {
                            "line": 183,
                            "column": 15
                          },
                          "end": {
                            "line": 183,
                            "column": 48
                          }
                        },
                        "callee": {
                          "type": "Identifier",
                          "start": 5827,
                          "end": 5839,
                          "loc": {
                            "start": {
                              "line": 183,
                              "column": 19
                            },
                            "end": {
                              "line": 183,
                              "column": 31
                            }
                          },
                          "name": "ChangesArray"
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 5840,
                            "end": 5855,
                            "loc": {
                              "start": {
                                "line": 183,
                                "column": 32
                              },
                              "end": {
                                "line": 183,
                                "column": 47
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 5840,
                              "end": 5847,
                              "loc": {
                                "start": {
                                  "line": 183,
                                  "column": 32
                                },
                                "end": {
                                  "line": 183,
                                  "column": 39
                                }
                              },
                              "name": "changes"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5848,
                              "end": 5855,
                              "loc": {
                                "start": {
                                  "line": 183,
                                  "column": 40
                                },
                                "end": {
                                  "line": 183,
                                  "column": 47
                                }
                              },
                              "name": "removed"
                            },
                            "computed": false
                          }
                        ]
                      }
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": "controlling mouse on the sketch area",
                  "start": 5869,
                  "end": 5907,
                  "loc": {
                    "start": {
                      "line": 186,
                      "column": 4
                    },
                    "end": {
                      "line": 186,
                      "column": 42
                    }
                  },
                  "range": [
                    5869,
                    5907
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 5912,
              "end": 6072,
              "loc": {
                "start": {
                  "line": 187,
                  "column": 4
                },
                "end": {
                  "line": 190,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 5918,
                "end": 5930,
                "loc": {
                  "start": {
                    "line": 187,
                    "column": 10
                  },
                  "end": {
                    "line": 187,
                    "column": 22
                  }
                },
                "name": "_mouseMoveTo"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 5930,
                "end": 6072,
                "loc": {
                  "start": {
                    "line": 187,
                    "column": 22
                  },
                  "end": {
                    "line": 190,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 5931,
                    "end": 5939,
                    "loc": {
                      "start": {
                        "line": 187,
                        "column": 23
                      },
                      "end": {
                        "line": 187,
                        "column": 31
                      }
                    },
                    "name": "posLocal"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 5941,
                  "end": 6072,
                  "loc": {
                    "start": {
                      "line": 187,
                      "column": 33
                    },
                    "end": {
                      "line": 190,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 5991,
                      "end": 6066,
                      "loc": {
                        "start": {
                          "line": 189,
                          "column": 8
                        },
                        "end": {
                          "line": 189,
                          "column": 83
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 5991,
                        "end": 6065,
                        "loc": {
                          "start": {
                            "line": 189,
                            "column": 8
                          },
                          "end": {
                            "line": 189,
                            "column": 82
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 5997,
                          "end": 6065,
                          "loc": {
                            "start": {
                              "line": 189,
                              "column": 14
                            },
                            "end": {
                              "line": 189,
                              "column": 82
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 5997,
                            "end": 6041,
                            "loc": {
                              "start": {
                                "line": 189,
                                "column": 14
                              },
                              "end": {
                                "line": 189,
                                "column": 58
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 5997,
                              "end": 6037,
                              "loc": {
                                "start": {
                                  "line": 189,
                                  "column": 14
                                },
                                "end": {
                                  "line": 189,
                                  "column": 54
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 5997,
                                "end": 6020,
                                "loc": {
                                  "start": {
                                    "line": 189,
                                    "column": 14
                                  },
                                  "end": {
                                    "line": 189,
                                    "column": 37
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 5997,
                                  "end": 6010,
                                  "loc": {
                                    "start": {
                                      "line": 189,
                                      "column": 14
                                    },
                                    "end": {
                                      "line": 189,
                                      "column": 27
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 5997,
                                    "end": 6001,
                                    "loc": {
                                      "start": {
                                        "line": 189,
                                        "column": 14
                                      },
                                      "end": {
                                        "line": 189,
                                        "column": 18
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 6002,
                                    "end": 6010,
                                    "loc": {
                                      "start": {
                                        "line": 189,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 189,
                                        "column": 27
                                      }
                                    },
                                    "name": "sketcher"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 6011,
                                  "end": 6020,
                                  "loc": {
                                    "start": {
                                      "line": 189,
                                      "column": 28
                                    },
                                    "end": {
                                      "line": 189,
                                      "column": 37
                                    }
                                  },
                                  "name": "modelData"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6021,
                                "end": 6037,
                                "loc": {
                                  "start": {
                                    "line": 189,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 189,
                                    "column": 54
                                  }
                                },
                                "name": "interactionPoint"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 6038,
                              "end": 6041,
                              "loc": {
                                "start": {
                                  "line": 189,
                                  "column": 55
                                },
                                "end": {
                                  "line": 189,
                                  "column": 58
                                }
                              },
                              "name": "set"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "MemberExpression",
                              "start": 6042,
                              "end": 6052,
                              "loc": {
                                "start": {
                                  "line": 189,
                                  "column": 59
                                },
                                "end": {
                                  "line": 189,
                                  "column": 69
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 6042,
                                "end": 6050,
                                "loc": {
                                  "start": {
                                    "line": 189,
                                    "column": 59
                                  },
                                  "end": {
                                    "line": 189,
                                    "column": 67
                                  }
                                },
                                "name": "posLocal"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6051,
                                "end": 6052,
                                "loc": {
                                  "start": {
                                    "line": 189,
                                    "column": 68
                                  },
                                  "end": {
                                    "line": 189,
                                    "column": 69
                                  }
                                },
                                "name": "x"
                              },
                              "computed": false
                            },
                            {
                              "type": "MemberExpression",
                              "start": 6054,
                              "end": 6064,
                              "loc": {
                                "start": {
                                  "line": 189,
                                  "column": 71
                                },
                                "end": {
                                  "line": 189,
                                  "column": 81
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 6054,
                                "end": 6062,
                                "loc": {
                                  "start": {
                                    "line": 189,
                                    "column": 71
                                  },
                                  "end": {
                                    "line": 189,
                                    "column": 79
                                  }
                                },
                                "name": "posLocal"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6063,
                                "end": 6064,
                                "loc": {
                                  "start": {
                                    "line": 189,
                                    "column": 80
                                  },
                                  "end": {
                                    "line": 189,
                                    "column": 81
                                  }
                                },
                                "name": "y"
                              },
                              "computed": false
                            }
                          ]
                        },
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "TODO: does it actually await?",
                          "start": 5951,
                          "end": 5982,
                          "loc": {
                            "start": {
                              "line": 188,
                              "column": 8
                            },
                            "end": {
                              "line": 188,
                              "column": 39
                            }
                          },
                          "range": [
                            5951,
                            5982
                          ]
                        }
                      ]
                    }
                  ]
                }
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": "controlling mouse on the sketch area",
                  "start": 5869,
                  "end": 5907,
                  "loc": {
                    "start": {
                      "line": 186,
                      "column": 4
                    },
                    "end": {
                      "line": 186,
                      "column": 42
                    }
                  },
                  "range": [
                    5869,
                    5907
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 6077,
              "end": 6266,
              "loc": {
                "start": {
                  "line": 191,
                  "column": 4
                },
                "end": {
                  "line": 195,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 6083,
                "end": 6094,
                "loc": {
                  "start": {
                    "line": 191,
                    "column": 10
                  },
                  "end": {
                    "line": 191,
                    "column": 21
                  }
                },
                "name": "mouseMoveTo"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 6094,
                "end": 6266,
                "loc": {
                  "start": {
                    "line": 191,
                    "column": 21
                  },
                  "end": {
                    "line": 195,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 6095,
                    "end": 6103,
                    "loc": {
                      "start": {
                        "line": 191,
                        "column": 22
                      },
                      "end": {
                        "line": 191,
                        "column": 30
                      }
                    },
                    "name": "posLocal"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 6105,
                  "end": 6266,
                  "loc": {
                    "start": {
                      "line": 191,
                      "column": 32
                    },
                    "end": {
                      "line": 195,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 6115,
                      "end": 6190,
                      "loc": {
                        "start": {
                          "line": 192,
                          "column": 8
                        },
                        "end": {
                          "line": 192,
                          "column": 83
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 6115,
                        "end": 6189,
                        "loc": {
                          "start": {
                            "line": 192,
                            "column": 8
                          },
                          "end": {
                            "line": 192,
                            "column": 82
                          }
                        },
                        "callee": {
                          "type": "Identifier",
                          "start": 6115,
                          "end": 6120,
                          "loc": {
                            "start": {
                              "line": 192,
                              "column": 8
                            },
                            "end": {
                              "line": 192,
                              "column": 13
                            }
                          },
                          "name": "check"
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 6121,
                            "end": 6148,
                            "loc": {
                              "start": {
                                "line": 192,
                                "column": 14
                              },
                              "end": {
                                "line": 192,
                                "column": 41
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 6121,
                              "end": 6134,
                              "loc": {
                                "start": {
                                  "line": 192,
                                  "column": 14
                                },
                                "end": {
                                  "line": 192,
                                  "column": 27
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 6121,
                                "end": 6125,
                                "loc": {
                                  "start": {
                                    "line": 192,
                                    "column": 14
                                  },
                                  "end": {
                                    "line": 192,
                                    "column": 18
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6126,
                                "end": 6134,
                                "loc": {
                                  "start": {
                                    "line": 192,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 192,
                                    "column": 27
                                  }
                                },
                                "name": "sketcher"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 6135,
                              "end": 6148,
                              "loc": {
                                "start": {
                                  "line": 192,
                                  "column": 28
                                },
                                "end": {
                                  "line": 192,
                                  "column": 41
                                }
                              },
                              "name": "currentSketch"
                            },
                            "computed": false
                          },
                          {
                            "type": "Literal",
                            "start": 6150,
                            "end": 6188,
                            "loc": {
                              "start": {
                                "line": 192,
                                "column": 43
                              },
                              "end": {
                                "line": 192,
                                "column": 81
                              }
                            },
                            "value": "Moving mouse without selected sketch",
                            "rawValue": "Moving mouse without selected sketch",
                            "raw": "\"Moving mouse without selected sketch\""
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 6199,
                      "end": 6233,
                      "loc": {
                        "start": {
                          "line": 193,
                          "column": 8
                        },
                        "end": {
                          "line": 193,
                          "column": 42
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 6199,
                        "end": 6232,
                        "loc": {
                          "start": {
                            "line": 193,
                            "column": 8
                          },
                          "end": {
                            "line": 193,
                            "column": 41
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 6205,
                          "end": 6232,
                          "loc": {
                            "start": {
                              "line": 193,
                              "column": 14
                            },
                            "end": {
                              "line": 193,
                              "column": 41
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 6205,
                            "end": 6222,
                            "loc": {
                              "start": {
                                "line": 193,
                                "column": 14
                              },
                              "end": {
                                "line": 193,
                                "column": 31
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 6205,
                              "end": 6209,
                              "loc": {
                                "start": {
                                  "line": 193,
                                  "column": 14
                                },
                                "end": {
                                  "line": 193,
                                  "column": 18
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 6210,
                              "end": 6222,
                              "loc": {
                                "start": {
                                  "line": 193,
                                  "column": 19
                                },
                                "end": {
                                  "line": 193,
                                  "column": 31
                                }
                              },
                              "name": "_mouseMoveTo"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 6223,
                              "end": 6231,
                              "loc": {
                                "start": {
                                  "line": 193,
                                  "column": 32
                                },
                                "end": {
                                  "line": 193,
                                  "column": 40
                                }
                              },
                              "name": "posLocal"
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 6242,
                      "end": 6260,
                      "loc": {
                        "start": {
                          "line": 194,
                          "column": 8
                        },
                        "end": {
                          "line": 194,
                          "column": 26
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 6242,
                        "end": 6259,
                        "loc": {
                          "start": {
                            "line": 194,
                            "column": 8
                          },
                          "end": {
                            "line": 194,
                            "column": 25
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 6248,
                          "end": 6259,
                          "loc": {
                            "start": {
                              "line": 194,
                              "column": 14
                            },
                            "end": {
                              "line": 194,
                              "column": 25
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 6248,
                            "end": 6257,
                            "loc": {
                              "start": {
                                "line": 194,
                                "column": 14
                              },
                              "end": {
                                "line": 194,
                                "column": 23
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 6248,
                              "end": 6252,
                              "loc": {
                                "start": {
                                  "line": 194,
                                  "column": 14
                                },
                                "end": {
                                  "line": 194,
                                  "column": 18
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 6253,
                              "end": 6257,
                              "loc": {
                                "start": {
                                  "line": 194,
                                  "column": 19
                                },
                                "end": {
                                  "line": 194,
                                  "column": 23
                                }
                              },
                              "name": "tick"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 6272,
              "end": 6548,
              "loc": {
                "start": {
                  "line": 196,
                  "column": 4
                },
                "end": {
                  "line": 201,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 6278,
                "end": 6290,
                "loc": {
                  "start": {
                    "line": 196,
                    "column": 10
                  },
                  "end": {
                    "line": 196,
                    "column": 22
                  }
                },
                "name": "mouseClickAt"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 6290,
                "end": 6548,
                "loc": {
                  "start": {
                    "line": 196,
                    "column": 22
                  },
                  "end": {
                    "line": 201,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 6291,
                    "end": 6299,
                    "loc": {
                      "start": {
                        "line": 196,
                        "column": 23
                      },
                      "end": {
                        "line": 196,
                        "column": 31
                      }
                    },
                    "name": "posLocal"
                  },
                  {
                    "type": "Identifier",
                    "start": 6301,
                    "end": 6307,
                    "loc": {
                      "start": {
                        "line": 196,
                        "column": 33
                      },
                      "end": {
                        "line": 196,
                        "column": 39
                      }
                    },
                    "name": "sketch"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 6309,
                  "end": 6548,
                  "loc": {
                    "start": {
                      "line": 196,
                      "column": 41
                    },
                    "end": {
                      "line": 201,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 6319,
                      "end": 6396,
                      "loc": {
                        "start": {
                          "line": 197,
                          "column": 8
                        },
                        "end": {
                          "line": 197,
                          "column": 85
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 6319,
                        "end": 6395,
                        "loc": {
                          "start": {
                            "line": 197,
                            "column": 8
                          },
                          "end": {
                            "line": 197,
                            "column": 84
                          }
                        },
                        "callee": {
                          "type": "Identifier",
                          "start": 6319,
                          "end": 6324,
                          "loc": {
                            "start": {
                              "line": 197,
                              "column": 8
                            },
                            "end": {
                              "line": 197,
                              "column": 13
                            }
                          },
                          "name": "check"
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 6325,
                            "end": 6352,
                            "loc": {
                              "start": {
                                "line": 197,
                                "column": 14
                              },
                              "end": {
                                "line": 197,
                                "column": 41
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 6325,
                              "end": 6338,
                              "loc": {
                                "start": {
                                  "line": 197,
                                  "column": 14
                                },
                                "end": {
                                  "line": 197,
                                  "column": 27
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 6325,
                                "end": 6329,
                                "loc": {
                                  "start": {
                                    "line": 197,
                                    "column": 14
                                  },
                                  "end": {
                                    "line": 197,
                                    "column": 18
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6330,
                                "end": 6338,
                                "loc": {
                                  "start": {
                                    "line": 197,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 197,
                                    "column": 27
                                  }
                                },
                                "name": "sketcher"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 6339,
                              "end": 6352,
                              "loc": {
                                "start": {
                                  "line": 197,
                                  "column": 28
                                },
                                "end": {
                                  "line": 197,
                                  "column": 41
                                }
                              },
                              "name": "currentSketch"
                            },
                            "computed": false
                          },
                          {
                            "type": "Literal",
                            "start": 6354,
                            "end": 6394,
                            "loc": {
                              "start": {
                                "line": 197,
                                "column": 43
                              },
                              "end": {
                                "line": 197,
                                "column": 83
                              }
                            },
                            "value": "Clicking mouse without selected sketch",
                            "rawValue": "Clicking mouse without selected sketch",
                            "raw": "\"Clicking mouse without selected sketch\""
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 6405,
                      "end": 6439,
                      "loc": {
                        "start": {
                          "line": 198,
                          "column": 8
                        },
                        "end": {
                          "line": 198,
                          "column": 42
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 6405,
                        "end": 6438,
                        "loc": {
                          "start": {
                            "line": 198,
                            "column": 8
                          },
                          "end": {
                            "line": 198,
                            "column": 41
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 6411,
                          "end": 6438,
                          "loc": {
                            "start": {
                              "line": 198,
                              "column": 14
                            },
                            "end": {
                              "line": 198,
                              "column": 41
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 6411,
                            "end": 6428,
                            "loc": {
                              "start": {
                                "line": 198,
                                "column": 14
                              },
                              "end": {
                                "line": 198,
                                "column": 31
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 6411,
                              "end": 6415,
                              "loc": {
                                "start": {
                                  "line": 198,
                                  "column": 14
                                },
                                "end": {
                                  "line": 198,
                                  "column": 18
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 6416,
                              "end": 6428,
                              "loc": {
                                "start": {
                                  "line": 198,
                                  "column": 19
                                },
                                "end": {
                                  "line": 198,
                                  "column": 31
                                }
                              },
                              "name": "_mouseMoveTo"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 6429,
                              "end": 6437,
                              "loc": {
                                "start": {
                                  "line": 198,
                                  "column": 32
                                },
                                "end": {
                                  "line": 198,
                                  "column": 40
                                }
                              },
                              "name": "posLocal"
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 6448,
                      "end": 6515,
                      "loc": {
                        "start": {
                          "line": 199,
                          "column": 8
                        },
                        "end": {
                          "line": 199,
                          "column": 75
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 6448,
                        "end": 6514,
                        "loc": {
                          "start": {
                            "line": 199,
                            "column": 8
                          },
                          "end": {
                            "line": 199,
                            "column": 74
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 6454,
                          "end": 6514,
                          "loc": {
                            "start": {
                              "line": 199,
                              "column": 14
                            },
                            "end": {
                              "line": 199,
                              "column": 74
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 6454,
                            "end": 6485,
                            "loc": {
                              "start": {
                                "line": 199,
                                "column": 14
                              },
                              "end": {
                                "line": 199,
                                "column": 45
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 6454,
                              "end": 6467,
                              "loc": {
                                "start": {
                                  "line": 199,
                                  "column": 14
                                },
                                "end": {
                                  "line": 199,
                                  "column": 27
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 6454,
                                "end": 6458,
                                "loc": {
                                  "start": {
                                    "line": 199,
                                    "column": 14
                                  },
                                  "end": {
                                    "line": 199,
                                    "column": 18
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6459,
                                "end": 6467,
                                "loc": {
                                  "start": {
                                    "line": 199,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 199,
                                    "column": 27
                                  }
                                },
                                "name": "sketcher"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 6468,
                              "end": 6485,
                              "loc": {
                                "start": {
                                  "line": 199,
                                  "column": 28
                                },
                                "end": {
                                  "line": 199,
                                  "column": 45
                                }
                              },
                              "name": "sketchAreaClicked"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "MemberExpression",
                              "start": 6486,
                              "end": 6513,
                              "loc": {
                                "start": {
                                  "line": 199,
                                  "column": 46
                                },
                                "end": {
                                  "line": 199,
                                  "column": 73
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 6486,
                                "end": 6499,
                                "loc": {
                                  "start": {
                                    "line": 199,
                                    "column": 46
                                  },
                                  "end": {
                                    "line": 199,
                                    "column": 59
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 6486,
                                  "end": 6490,
                                  "loc": {
                                    "start": {
                                      "line": 199,
                                      "column": 46
                                    },
                                    "end": {
                                      "line": 199,
                                      "column": 50
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 6491,
                                  "end": 6499,
                                  "loc": {
                                    "start": {
                                      "line": 199,
                                      "column": 51
                                    },
                                    "end": {
                                      "line": 199,
                                      "column": 59
                                    }
                                  },
                                  "name": "sketcher"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6500,
                                "end": 6513,
                                "loc": {
                                  "start": {
                                    "line": 199,
                                    "column": 60
                                  },
                                  "end": {
                                    "line": 199,
                                    "column": 73
                                  }
                                },
                                "name": "currentSketch"
                              },
                              "computed": false
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 6524,
                      "end": 6542,
                      "loc": {
                        "start": {
                          "line": 200,
                          "column": 8
                        },
                        "end": {
                          "line": 200,
                          "column": 26
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 6524,
                        "end": 6541,
                        "loc": {
                          "start": {
                            "line": 200,
                            "column": 8
                          },
                          "end": {
                            "line": 200,
                            "column": 25
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 6530,
                          "end": 6541,
                          "loc": {
                            "start": {
                              "line": 200,
                              "column": 14
                            },
                            "end": {
                              "line": 200,
                              "column": 25
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 6530,
                            "end": 6539,
                            "loc": {
                              "start": {
                                "line": 200,
                                "column": 14
                              },
                              "end": {
                                "line": 200,
                                "column": 23
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 6530,
                              "end": 6534,
                              "loc": {
                                "start": {
                                  "line": 200,
                                  "column": 14
                                },
                                "end": {
                                  "line": 200,
                                  "column": 18
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 6535,
                              "end": 6539,
                              "loc": {
                                "start": {
                                  "line": 200,
                                  "column": 19
                                },
                                "end": {
                                  "line": 200,
                                  "column": 23
                                }
                              },
                              "name": "tick"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 6605,
              "end": 7138,
              "loc": {
                "start": {
                  "line": 204,
                  "column": 4
                },
                "end": {
                  "line": 211,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 6611,
                "end": 6627,
                "loc": {
                  "start": {
                    "line": 204,
                    "column": 10
                  },
                  "end": {
                    "line": 204,
                    "column": 26
                  }
                },
                "name": "_interactionEmit"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 6627,
                "end": 7138,
                "loc": {
                  "start": {
                    "line": 204,
                    "column": 26
                  },
                  "end": {
                    "line": 211,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 6628,
                    "end": 6631,
                    "loc": {
                      "start": {
                        "line": 204,
                        "column": 27
                      },
                      "end": {
                        "line": 204,
                        "column": 30
                      }
                    },
                    "name": "obj"
                  },
                  {
                    "type": "Identifier",
                    "start": 6633,
                    "end": 6637,
                    "loc": {
                      "start": {
                        "line": 204,
                        "column": 32
                      },
                      "end": {
                        "line": 204,
                        "column": 36
                      }
                    },
                    "name": "type"
                  },
                  {
                    "type": "RestElement",
                    "start": 6639,
                    "end": 6646,
                    "loc": {
                      "start": {
                        "line": 204,
                        "column": 38
                      },
                      "end": {
                        "line": 204,
                        "column": 45
                      }
                    },
                    "argument": {
                      "type": "Identifier",
                      "start": 6642,
                      "end": 6646,
                      "loc": {
                        "start": {
                          "line": 204,
                          "column": 41
                        },
                        "end": {
                          "line": 204,
                          "column": 45
                        }
                      },
                      "name": "args"
                    }
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 6648,
                  "end": 7138,
                  "loc": {
                    "start": {
                      "line": 204,
                      "column": 47
                    },
                    "end": {
                      "line": 211,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 6658,
                      "end": 6744,
                      "loc": {
                        "start": {
                          "line": 205,
                          "column": 8
                        },
                        "end": {
                          "line": 205,
                          "column": 94
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 6658,
                        "end": 6743,
                        "loc": {
                          "start": {
                            "line": 205,
                            "column": 8
                          },
                          "end": {
                            "line": 205,
                            "column": 93
                          }
                        },
                        "callee": {
                          "type": "Identifier",
                          "start": 6658,
                          "end": 6663,
                          "loc": {
                            "start": {
                              "line": 205,
                              "column": 8
                            },
                            "end": {
                              "line": 205,
                              "column": 13
                            }
                          },
                          "name": "check"
                        },
                        "arguments": [
                          {
                            "type": "BinaryExpression",
                            "start": 6664,
                            "end": 6687,
                            "loc": {
                              "start": {
                                "line": 205,
                                "column": 14
                              },
                              "end": {
                                "line": 205,
                                "column": 37
                              }
                            },
                            "left": {
                              "type": "Identifier",
                              "start": 6664,
                              "end": 6667,
                              "loc": {
                                "start": {
                                  "line": 205,
                                  "column": 14
                                },
                                "end": {
                                  "line": 205,
                                  "column": 17
                                }
                              },
                              "name": "obj"
                            },
                            "operator": "instanceof",
                            "right": {
                              "type": "Identifier",
                              "start": 6679,
                              "end": 6687,
                              "loc": {
                                "start": {
                                  "line": 205,
                                  "column": 29
                                },
                                "end": {
                                  "line": 205,
                                  "column": 37
                                }
                              },
                              "name": "Object3D"
                            }
                          },
                          {
                            "type": "Literal",
                            "start": 6689,
                            "end": 6742,
                            "loc": {
                              "start": {
                                "line": 205,
                                "column": 39
                              },
                              "end": {
                                "line": 205,
                                "column": 92
                              }
                            },
                            "value": "Interacting with something not being a THREE object",
                            "rawValue": "Interacting with something not being a THREE object",
                            "raw": "\"Interacting with something not being a THREE object\""
                          }
                        ]
                      }
                    },
                    {
                      "type": "IfStatement",
                      "start": 6753,
                      "end": 6824,
                      "loc": {
                        "start": {
                          "line": 206,
                          "column": 8
                        },
                        "end": {
                          "line": 207,
                          "column": 31
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 6757,
                        "end": 6791,
                        "loc": {
                          "start": {
                            "line": 206,
                            "column": 12
                          },
                          "end": {
                            "line": 206,
                            "column": 46
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 6757,
                          "end": 6769,
                          "loc": {
                            "start": {
                              "line": 206,
                              "column": 12
                            },
                            "end": {
                              "line": 206,
                              "column": 24
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 6757,
                            "end": 6760,
                            "loc": {
                              "start": {
                                "line": 206,
                                "column": 12
                              },
                              "end": {
                                "line": 206,
                                "column": 15
                              }
                            },
                            "name": "obj"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6761,
                            "end": 6769,
                            "loc": {
                              "start": {
                                "line": 206,
                                "column": 16
                              },
                              "end": {
                                "line": 206,
                                "column": 24
                              }
                            },
                            "name": "interact"
                          },
                          "computed": false
                        },
                        "operator": "instanceof",
                        "right": {
                          "type": "MemberExpression",
                          "start": 6781,
                          "end": 6791,
                          "loc": {
                            "start": {
                              "line": 206,
                              "column": 36
                            },
                            "end": {
                              "line": 206,
                              "column": 46
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 6781,
                            "end": 6786,
                            "loc": {
                              "start": {
                                "line": 206,
                                "column": 36
                              },
                              "end": {
                                "line": 206,
                                "column": 41
                              }
                            },
                            "name": "THREE"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6787,
                            "end": 6791,
                            "loc": {
                              "start": {
                                "line": 206,
                                "column": 42
                              },
                              "end": {
                                "line": 206,
                                "column": 46
                              }
                            },
                            "name": "Mesh"
                          },
                          "computed": false
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 6805,
                        "end": 6824,
                        "loc": {
                          "start": {
                            "line": 207,
                            "column": 12
                          },
                          "end": {
                            "line": 207,
                            "column": 31
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 6805,
                          "end": 6823,
                          "loc": {
                            "start": {
                              "line": 207,
                              "column": 12
                            },
                            "end": {
                              "line": 207,
                              "column": 30
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "Identifier",
                            "start": 6805,
                            "end": 6808,
                            "loc": {
                              "start": {
                                "line": 207,
                                "column": 12
                              },
                              "end": {
                                "line": 207,
                                "column": 15
                              }
                            },
                            "name": "obj"
                          },
                          "right": {
                            "type": "MemberExpression",
                            "start": 6811,
                            "end": 6823,
                            "loc": {
                              "start": {
                                "line": 207,
                                "column": 18
                              },
                              "end": {
                                "line": 207,
                                "column": 30
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 6811,
                              "end": 6814,
                              "loc": {
                                "start": {
                                  "line": 207,
                                  "column": 18
                                },
                                "end": {
                                  "line": 207,
                                  "column": 21
                                }
                              },
                              "name": "obj"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 6815,
                              "end": 6823,
                              "loc": {
                                "start": {
                                  "line": 207,
                                  "column": 22
                                },
                                "end": {
                                  "line": 207,
                                  "column": 30
                                }
                              },
                              "name": "interact"
                            },
                            "computed": false
                          }
                        },
                        "trailingComments": null
                      },
                      "alternate": null,
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": "make things easier for sketch objects",
                          "start": 6826,
                          "end": 6865,
                          "loc": {
                            "start": {
                              "line": 207,
                              "column": 33
                            },
                            "end": {
                              "line": 207,
                              "column": 72
                            }
                          },
                          "range": [
                            6826,
                            6865
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 6874,
                      "end": 6990,
                      "loc": {
                        "start": {
                          "line": 208,
                          "column": 8
                        },
                        "end": {
                          "line": 208,
                          "column": 124
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 6874,
                        "end": 6989,
                        "loc": {
                          "start": {
                            "line": 208,
                            "column": 8
                          },
                          "end": {
                            "line": 208,
                            "column": 123
                          }
                        },
                        "callee": {
                          "type": "Identifier",
                          "start": 6874,
                          "end": 6879,
                          "loc": {
                            "start": {
                              "line": 208,
                              "column": 8
                            },
                            "end": {
                              "line": 208,
                              "column": 13
                            }
                          },
                          "name": "check",
                          "leadingComments": null
                        },
                        "arguments": [
                          {
                            "type": "LogicalExpression",
                            "start": 6880,
                            "end": 6920,
                            "loc": {
                              "start": {
                                "line": 208,
                                "column": 14
                              },
                              "end": {
                                "line": 208,
                                "column": 54
                              }
                            },
                            "left": {
                              "type": "MemberExpression",
                              "start": 6880,
                              "end": 6895,
                              "loc": {
                                "start": {
                                  "line": 208,
                                  "column": 14
                                },
                                "end": {
                                  "line": 208,
                                  "column": 29
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 6880,
                                "end": 6883,
                                "loc": {
                                  "start": {
                                    "line": 208,
                                    "column": 14
                                  },
                                  "end": {
                                    "line": 208,
                                    "column": 17
                                  }
                                },
                                "name": "obj"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6884,
                                "end": 6895,
                                "loc": {
                                  "start": {
                                    "line": 208,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 208,
                                    "column": 29
                                  }
                                },
                                "name": "interaction"
                              },
                              "computed": false
                            },
                            "operator": "&&",
                            "right": {
                              "type": "CallExpression",
                              "start": 6899,
                              "end": 6920,
                              "loc": {
                                "start": {
                                  "line": 208,
                                  "column": 33
                                },
                                "end": {
                                  "line": 208,
                                  "column": 54
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 6899,
                                "end": 6914,
                                "loc": {
                                  "start": {
                                    "line": 208,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 208,
                                    "column": 48
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 6899,
                                  "end": 6902,
                                  "loc": {
                                    "start": {
                                      "line": 208,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 208,
                                      "column": 36
                                    }
                                  },
                                  "name": "obj"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 6903,
                                  "end": 6914,
                                  "loc": {
                                    "start": {
                                      "line": 208,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 208,
                                      "column": 48
                                    }
                                  },
                                  "name": "hasListener"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 6915,
                                  "end": 6919,
                                  "loc": {
                                    "start": {
                                      "line": 208,
                                      "column": 49
                                    },
                                    "end": {
                                      "line": 208,
                                      "column": 53
                                    }
                                  },
                                  "name": "type"
                                }
                              ]
                            }
                          },
                          {
                            "type": "Literal",
                            "start": 6922,
                            "end": 6988,
                            "loc": {
                              "start": {
                                "line": 208,
                                "column": 56
                              },
                              "end": {
                                "line": 208,
                                "column": 122
                              }
                            },
                            "value": "Interacting with object without interaction or handler installed",
                            "rawValue": "Interacting with object without interaction or handler installed",
                            "raw": "\"Interacting with object without interaction or handler installed\""
                          }
                        ],
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": "make things easier for sketch objects",
                          "start": 6826,
                          "end": 6865,
                          "loc": {
                            "start": {
                              "line": 207,
                              "column": 33
                            },
                            "end": {
                              "line": 207,
                              "column": 72
                            }
                          },
                          "range": [
                            6826,
                            6865
                          ]
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 6999,
                      "end": 7093,
                      "loc": {
                        "start": {
                          "line": 209,
                          "column": 8
                        },
                        "end": {
                          "line": 209,
                          "column": 102
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 6999,
                        "end": 7092,
                        "loc": {
                          "start": {
                            "line": 209,
                            "column": 8
                          },
                          "end": {
                            "line": 209,
                            "column": 101
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 6999,
                          "end": 7020,
                          "loc": {
                            "start": {
                              "line": 209,
                              "column": 8
                            },
                            "end": {
                              "line": 209,
                              "column": 29
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 6999,
                            "end": 7002,
                            "loc": {
                              "start": {
                                "line": 209,
                                "column": 8
                              },
                              "end": {
                                "line": 209,
                                "column": 11
                              }
                            },
                            "name": "obj"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7003,
                            "end": 7020,
                            "loc": {
                              "start": {
                                "line": 209,
                                "column": 12
                              },
                              "end": {
                                "line": 209,
                                "column": 29
                              }
                            },
                            "name": "traverseAncestors"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 7021,
                            "end": 7091,
                            "loc": {
                              "start": {
                                "line": 209,
                                "column": 30
                              },
                              "end": {
                                "line": 209,
                                "column": 100
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": true,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 7022,
                                "end": 7028,
                                "loc": {
                                  "start": {
                                    "line": 209,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 209,
                                    "column": 37
                                  }
                                },
                                "name": "parent"
                              }
                            ],
                            "body": {
                              "type": "CallExpression",
                              "start": 7033,
                              "end": 7091,
                              "loc": {
                                "start": {
                                  "line": 209,
                                  "column": 42
                                },
                                "end": {
                                  "line": 209,
                                  "column": 100
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 7033,
                                "end": 7038,
                                "loc": {
                                  "start": {
                                    "line": 209,
                                    "column": 42
                                  },
                                  "end": {
                                    "line": 209,
                                    "column": 47
                                  }
                                },
                                "name": "check"
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 7039,
                                  "end": 7053,
                                  "loc": {
                                    "start": {
                                      "line": 209,
                                      "column": 48
                                    },
                                    "end": {
                                      "line": 209,
                                      "column": 62
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 7039,
                                    "end": 7045,
                                    "loc": {
                                      "start": {
                                        "line": 209,
                                        "column": 48
                                      },
                                      "end": {
                                        "line": 209,
                                        "column": 54
                                      }
                                    },
                                    "name": "parent"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 7046,
                                    "end": 7053,
                                    "loc": {
                                      "start": {
                                        "line": 209,
                                        "column": 55
                                      },
                                      "end": {
                                        "line": 209,
                                        "column": 62
                                      }
                                    },
                                    "name": "visible"
                                  },
                                  "computed": false
                                },
                                {
                                  "type": "Literal",
                                  "start": 7055,
                                  "end": 7090,
                                  "loc": {
                                    "start": {
                                      "line": 209,
                                      "column": 64
                                    },
                                    "end": {
                                      "line": 209,
                                      "column": 99
                                    }
                                  },
                                  "value": "Interacting with invisible object",
                                  "rawValue": "Interacting with invisible object",
                                  "raw": "\"Interacting with invisible object\""
                                }
                              ]
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 7102,
                      "end": 7132,
                      "loc": {
                        "start": {
                          "line": 210,
                          "column": 8
                        },
                        "end": {
                          "line": 210,
                          "column": 38
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 7102,
                        "end": 7131,
                        "loc": {
                          "start": {
                            "line": 210,
                            "column": 8
                          },
                          "end": {
                            "line": 210,
                            "column": 37
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 7108,
                          "end": 7131,
                          "loc": {
                            "start": {
                              "line": 210,
                              "column": 14
                            },
                            "end": {
                              "line": 210,
                              "column": 37
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 7108,
                            "end": 7116,
                            "loc": {
                              "start": {
                                "line": 210,
                                "column": 14
                              },
                              "end": {
                                "line": 210,
                                "column": 22
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 7108,
                              "end": 7111,
                              "loc": {
                                "start": {
                                  "line": 210,
                                  "column": 14
                                },
                                "end": {
                                  "line": 210,
                                  "column": 17
                                }
                              },
                              "name": "obj"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7112,
                              "end": 7116,
                              "loc": {
                                "start": {
                                  "line": 210,
                                  "column": 18
                                },
                                "end": {
                                  "line": 210,
                                  "column": 22
                                }
                              },
                              "name": "emit"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 7117,
                              "end": 7121,
                              "loc": {
                                "start": {
                                  "line": 210,
                                  "column": 23
                                },
                                "end": {
                                  "line": 210,
                                  "column": 27
                                }
                              },
                              "name": "type"
                            },
                            {
                              "type": "SpreadElement",
                              "start": 7123,
                              "end": 7130,
                              "loc": {
                                "start": {
                                  "line": 210,
                                  "column": 29
                                },
                                "end": {
                                  "line": 210,
                                  "column": 36
                                }
                              },
                              "argument": {
                                "type": "Identifier",
                                "start": 7126,
                                "end": 7130,
                                "loc": {
                                  "start": {
                                    "line": 210,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 210,
                                    "column": 36
                                  }
                                },
                                "name": "args"
                              }
                            }
                          ]
                        }
                      }
                    }
                  ]
                }
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": "controlling mouse actions on sketch objects",
                  "start": 6555,
                  "end": 6600,
                  "loc": {
                    "start": {
                      "line": 203,
                      "column": 4
                    },
                    "end": {
                      "line": 203,
                      "column": 49
                    }
                  },
                  "range": [
                    6555,
                    6600
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 7143,
              "end": 7279,
              "loc": {
                "start": {
                  "line": 212,
                  "column": 4
                },
                "end": {
                  "line": 215,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 7149,
                "end": 7160,
                "loc": {
                  "start": {
                    "line": 212,
                    "column": 10
                  },
                  "end": {
                    "line": 212,
                    "column": 21
                  }
                },
                "name": "clickObject"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 7160,
                "end": 7279,
                "loc": {
                  "start": {
                    "line": 212,
                    "column": 21
                  },
                  "end": {
                    "line": 215,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 7161,
                    "end": 7164,
                    "loc": {
                      "start": {
                        "line": 212,
                        "column": 22
                      },
                      "end": {
                        "line": 212,
                        "column": 25
                      }
                    },
                    "name": "obj"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 7166,
                  "end": 7279,
                  "loc": {
                    "start": {
                      "line": 212,
                      "column": 27
                    },
                    "end": {
                      "line": 215,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 7176,
                      "end": 7246,
                      "loc": {
                        "start": {
                          "line": 213,
                          "column": 8
                        },
                        "end": {
                          "line": 213,
                          "column": 78
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 7176,
                        "end": 7245,
                        "loc": {
                          "start": {
                            "line": 213,
                            "column": 8
                          },
                          "end": {
                            "line": 213,
                            "column": 77
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 7182,
                          "end": 7245,
                          "loc": {
                            "start": {
                              "line": 213,
                              "column": 14
                            },
                            "end": {
                              "line": 213,
                              "column": 77
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 7182,
                            "end": 7203,
                            "loc": {
                              "start": {
                                "line": 213,
                                "column": 14
                              },
                              "end": {
                                "line": 213,
                                "column": 35
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 7182,
                              "end": 7186,
                              "loc": {
                                "start": {
                                  "line": 213,
                                  "column": 14
                                },
                                "end": {
                                  "line": 213,
                                  "column": 18
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7187,
                              "end": 7203,
                              "loc": {
                                "start": {
                                  "line": 213,
                                  "column": 19
                                },
                                "end": {
                                  "line": 213,
                                  "column": 35
                                }
                              },
                              "name": "_interactionEmit"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 7204,
                              "end": 7207,
                              "loc": {
                                "start": {
                                  "line": 213,
                                  "column": 36
                                },
                                "end": {
                                  "line": 213,
                                  "column": 39
                                }
                              },
                              "name": "obj"
                            },
                            {
                              "type": "MemberExpression",
                              "start": 7209,
                              "end": 7244,
                              "loc": {
                                "start": {
                                  "line": 213,
                                  "column": 41
                                },
                                "end": {
                                  "line": 213,
                                  "column": 76
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 7209,
                                "end": 7236,
                                "loc": {
                                  "start": {
                                    "line": 213,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 213,
                                    "column": 68
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 7209,
                                  "end": 7224,
                                  "loc": {
                                    "start": {
                                      "line": 213,
                                      "column": 41
                                    },
                                    "end": {
                                      "line": 213,
                                      "column": 56
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 7209,
                                    "end": 7217,
                                    "loc": {
                                      "start": {
                                        "line": 213,
                                        "column": 41
                                      },
                                      "end": {
                                        "line": 213,
                                        "column": 49
                                      }
                                    },
                                    "name": "Object3D"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 7218,
                                    "end": 7224,
                                    "loc": {
                                      "start": {
                                        "line": 213,
                                        "column": 50
                                      },
                                      "end": {
                                        "line": 213,
                                        "column": 56
                                      }
                                    },
                                    "name": "Events"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 7225,
                                  "end": 7236,
                                  "loc": {
                                    "start": {
                                      "line": 213,
                                      "column": 57
                                    },
                                    "end": {
                                      "line": 213,
                                      "column": 68
                                    }
                                  },
                                  "name": "Interaction"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 7237,
                                "end": 7244,
                                "loc": {
                                  "start": {
                                    "line": 213,
                                    "column": 69
                                  },
                                  "end": {
                                    "line": 213,
                                    "column": 76
                                  }
                                },
                                "name": "Clicked"
                              },
                              "computed": false
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 7255,
                      "end": 7273,
                      "loc": {
                        "start": {
                          "line": 214,
                          "column": 8
                        },
                        "end": {
                          "line": 214,
                          "column": 26
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 7255,
                        "end": 7272,
                        "loc": {
                          "start": {
                            "line": 214,
                            "column": 8
                          },
                          "end": {
                            "line": 214,
                            "column": 25
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 7261,
                          "end": 7272,
                          "loc": {
                            "start": {
                              "line": 214,
                              "column": 14
                            },
                            "end": {
                              "line": 214,
                              "column": 25
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 7261,
                            "end": 7270,
                            "loc": {
                              "start": {
                                "line": 214,
                                "column": 14
                              },
                              "end": {
                                "line": 214,
                                "column": 23
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 7261,
                              "end": 7265,
                              "loc": {
                                "start": {
                                  "line": 214,
                                  "column": 14
                                },
                                "end": {
                                  "line": 214,
                                  "column": 18
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7266,
                              "end": 7270,
                              "loc": {
                                "start": {
                                  "line": 214,
                                  "column": 19
                                },
                                "end": {
                                  "line": 214,
                                  "column": 23
                                }
                              },
                              "name": "tick"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 7284,
              "end": 7789,
              "loc": {
                "start": {
                  "line": 216,
                  "column": 4
                },
                "end": {
                  "line": 227,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 7284,
                "end": 7311,
                "loc": {
                  "start": {
                    "line": 216,
                    "column": 4
                  },
                  "end": {
                    "line": 216,
                    "column": 31
                  }
                },
                "name": "_dragPathRelativeToAbsolute"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 7311,
                "end": 7789,
                "loc": {
                  "start": {
                    "line": 216,
                    "column": 31
                  },
                  "end": {
                    "line": 227,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 7312,
                    "end": 7315,
                    "loc": {
                      "start": {
                        "line": 216,
                        "column": 32
                      },
                      "end": {
                        "line": 216,
                        "column": 35
                      }
                    },
                    "name": "obj"
                  },
                  {
                    "type": "Identifier",
                    "start": 7317,
                    "end": 7325,
                    "loc": {
                      "start": {
                        "line": 216,
                        "column": 37
                      },
                      "end": {
                        "line": 216,
                        "column": 45
                      }
                    },
                    "name": "posArray"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 7327,
                  "end": 7789,
                  "loc": {
                    "start": {
                      "line": 216,
                      "column": 47
                    },
                    "end": {
                      "line": 227,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 7337,
                      "end": 7357,
                      "loc": {
                        "start": {
                          "line": 217,
                          "column": 8
                        },
                        "end": {
                          "line": 217,
                          "column": 28
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 7341,
                          "end": 7356,
                          "loc": {
                            "start": {
                              "line": 217,
                              "column": 12
                            },
                            "end": {
                              "line": 217,
                              "column": 27
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 7341,
                            "end": 7349,
                            "loc": {
                              "start": {
                                "line": 217,
                                "column": 12
                              },
                              "end": {
                                "line": 217,
                                "column": 20
                              }
                            },
                            "name": "keyPoint"
                          },
                          "init": {
                            "type": "Literal",
                            "start": 7352,
                            "end": 7356,
                            "loc": {
                              "start": {
                                "line": 217,
                                "column": 23
                              },
                              "end": {
                                "line": 217,
                                "column": 27
                              }
                            },
                            "value": null,
                            "rawValue": null,
                            "raw": "null"
                          }
                        }
                      ],
                      "kind": "let"
                    },
                    {
                      "type": "IfStatement",
                      "start": 7366,
                      "end": 7434,
                      "loc": {
                        "start": {
                          "line": 218,
                          "column": 8
                        },
                        "end": {
                          "line": 219,
                          "column": 36
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 7370,
                        "end": 7396,
                        "loc": {
                          "start": {
                            "line": 218,
                            "column": 12
                          },
                          "end": {
                            "line": 218,
                            "column": 38
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 7370,
                          "end": 7373,
                          "loc": {
                            "start": {
                              "line": 218,
                              "column": 12
                            },
                            "end": {
                              "line": 218,
                              "column": 15
                            }
                          },
                          "name": "obj"
                        },
                        "operator": "instanceof",
                        "right": {
                          "type": "Identifier",
                          "start": 7385,
                          "end": 7396,
                          "loc": {
                            "start": {
                              "line": 218,
                              "column": 27
                            },
                            "end": {
                              "line": 218,
                              "column": 38
                            }
                          },
                          "name": "SketchPoint"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 7410,
                        "end": 7434,
                        "loc": {
                          "start": {
                            "line": 219,
                            "column": 12
                          },
                          "end": {
                            "line": 219,
                            "column": 36
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 7410,
                          "end": 7433,
                          "loc": {
                            "start": {
                              "line": 219,
                              "column": 12
                            },
                            "end": {
                              "line": 219,
                              "column": 35
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "Identifier",
                            "start": 7410,
                            "end": 7418,
                            "loc": {
                              "start": {
                                "line": 219,
                                "column": 12
                              },
                              "end": {
                                "line": 219,
                                "column": 20
                              }
                            },
                            "name": "keyPoint"
                          },
                          "right": {
                            "type": "MemberExpression",
                            "start": 7421,
                            "end": 7433,
                            "loc": {
                              "start": {
                                "line": 219,
                                "column": 23
                              },
                              "end": {
                                "line": 219,
                                "column": 35
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 7421,
                              "end": 7424,
                              "loc": {
                                "start": {
                                  "line": 219,
                                  "column": 23
                                },
                                "end": {
                                  "line": 219,
                                  "column": 26
                                }
                              },
                              "name": "obj"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7425,
                              "end": 7433,
                              "loc": {
                                "start": {
                                  "line": 219,
                                  "column": 27
                                },
                                "end": {
                                  "line": 219,
                                  "column": 35
                                }
                              },
                              "name": "position"
                            },
                            "computed": false
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "IfStatement",
                      "start": 7443,
                      "end": 7549,
                      "loc": {
                        "start": {
                          "line": 220,
                          "column": 8
                        },
                        "end": {
                          "line": 221,
                          "column": 47
                        }
                      },
                      "test": {
                        "type": "LogicalExpression",
                        "start": 7447,
                        "end": 7500,
                        "loc": {
                          "start": {
                            "line": 220,
                            "column": 12
                          },
                          "end": {
                            "line": 220,
                            "column": 65
                          }
                        },
                        "left": {
                          "type": "BinaryExpression",
                          "start": 7447,
                          "end": 7472,
                          "loc": {
                            "start": {
                              "line": 220,
                              "column": 12
                            },
                            "end": {
                              "line": 220,
                              "column": 37
                            }
                          },
                          "left": {
                            "type": "Identifier",
                            "start": 7447,
                            "end": 7450,
                            "loc": {
                              "start": {
                                "line": 220,
                                "column": 12
                              },
                              "end": {
                                "line": 220,
                                "column": 15
                              }
                            },
                            "name": "obj"
                          },
                          "operator": "instanceof",
                          "right": {
                            "type": "Identifier",
                            "start": 7462,
                            "end": 7472,
                            "loc": {
                              "start": {
                                "line": 220,
                                "column": 27
                              },
                              "end": {
                                "line": 220,
                                "column": 37
                              }
                            },
                            "name": "SketchLine"
                          }
                        },
                        "operator": "||",
                        "right": {
                          "type": "BinaryExpression",
                          "start": 7476,
                          "end": 7500,
                          "loc": {
                            "start": {
                              "line": 220,
                              "column": 41
                            },
                            "end": {
                              "line": 220,
                              "column": 65
                            }
                          },
                          "left": {
                            "type": "Identifier",
                            "start": 7476,
                            "end": 7479,
                            "loc": {
                              "start": {
                                "line": 220,
                                "column": 41
                              },
                              "end": {
                                "line": 220,
                                "column": 44
                              }
                            },
                            "name": "obj"
                          },
                          "operator": "instanceof",
                          "right": {
                            "type": "Identifier",
                            "start": 7491,
                            "end": 7500,
                            "loc": {
                              "start": {
                                "line": 220,
                                "column": 56
                              },
                              "end": {
                                "line": 220,
                                "column": 65
                              }
                            },
                            "name": "SketchArc"
                          }
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 7514,
                        "end": 7549,
                        "loc": {
                          "start": {
                            "line": 221,
                            "column": 12
                          },
                          "end": {
                            "line": 221,
                            "column": 47
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 7514,
                          "end": 7548,
                          "loc": {
                            "start": {
                              "line": 221,
                              "column": 12
                            },
                            "end": {
                              "line": 221,
                              "column": 46
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "Identifier",
                            "start": 7514,
                            "end": 7522,
                            "loc": {
                              "start": {
                                "line": 221,
                                "column": 12
                              },
                              "end": {
                                "line": 221,
                                "column": 20
                              }
                            },
                            "name": "keyPoint"
                          },
                          "right": {
                            "type": "CallExpression",
                            "start": 7525,
                            "end": 7548,
                            "loc": {
                              "start": {
                                "line": 221,
                                "column": 23
                              },
                              "end": {
                                "line": 221,
                                "column": 46
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 7525,
                              "end": 7546,
                              "loc": {
                                "start": {
                                  "line": 221,
                                  "column": 23
                                },
                                "end": {
                                  "line": 221,
                                  "column": 44
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 7525,
                                "end": 7528,
                                "loc": {
                                  "start": {
                                    "line": 221,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 221,
                                    "column": 26
                                  }
                                },
                                "name": "obj"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 7529,
                                "end": 7546,
                                "loc": {
                                  "start": {
                                    "line": 221,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 221,
                                    "column": 44
                                  }
                                },
                                "name": "getMiddlePosition"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 7558,
                      "end": 7630,
                      "loc": {
                        "start": {
                          "line": 222,
                          "column": 8
                        },
                        "end": {
                          "line": 222,
                          "column": 80
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 7558,
                        "end": 7629,
                        "loc": {
                          "start": {
                            "line": 222,
                            "column": 8
                          },
                          "end": {
                            "line": 222,
                            "column": 79
                          }
                        },
                        "callee": {
                          "type": "Identifier",
                          "start": 7558,
                          "end": 7563,
                          "loc": {
                            "start": {
                              "line": 222,
                              "column": 8
                            },
                            "end": {
                              "line": 222,
                              "column": 13
                            }
                          },
                          "name": "check"
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 7564,
                            "end": 7572,
                            "loc": {
                              "start": {
                                "line": 222,
                                "column": 14
                              },
                              "end": {
                                "line": 222,
                                "column": 22
                              }
                            },
                            "name": "keyPoint"
                          },
                          {
                            "type": "Literal",
                            "start": 7574,
                            "end": 7628,
                            "loc": {
                              "start": {
                                "line": 222,
                                "column": 24
                              },
                              "end": {
                                "line": 222,
                                "column": 78
                              }
                            },
                            "value": "Cannot detect key point for relative object dragging",
                            "rawValue": "Cannot detect key point for relative object dragging",
                            "raw": "\"Cannot detect key point for relative object dragging\""
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 7639,
                      "end": 7693,
                      "loc": {
                        "start": {
                          "line": 223,
                          "column": 8
                        },
                        "end": {
                          "line": 223,
                          "column": 62
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 7639,
                        "end": 7692,
                        "loc": {
                          "start": {
                            "line": 223,
                            "column": 8
                          },
                          "end": {
                            "line": 223,
                            "column": 61
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 7639,
                          "end": 7647,
                          "loc": {
                            "start": {
                              "line": 223,
                              "column": 8
                            },
                            "end": {
                              "line": 223,
                              "column": 16
                            }
                          },
                          "name": "posArray"
                        },
                        "right": {
                          "type": "CallExpression",
                          "start": 7650,
                          "end": 7692,
                          "loc": {
                            "start": {
                              "line": 223,
                              "column": 19
                            },
                            "end": {
                              "line": 223,
                              "column": 61
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 7650,
                            "end": 7682,
                            "loc": {
                              "start": {
                                "line": 223,
                                "column": 19
                              },
                              "end": {
                                "line": 223,
                                "column": 51
                              }
                            },
                            "object": {
                              "type": "ArrayExpression",
                              "start": 7650,
                              "end": 7675,
                              "loc": {
                                "start": {
                                  "line": 223,
                                  "column": 19
                                },
                                "end": {
                                  "line": 223,
                                  "column": 44
                                }
                              },
                              "elements": [
                                {
                                  "type": "NewExpression",
                                  "start": 7651,
                                  "end": 7674,
                                  "loc": {
                                    "start": {
                                      "line": 223,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 223,
                                      "column": 43
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 7655,
                                    "end": 7668,
                                    "loc": {
                                      "start": {
                                        "line": 223,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 223,
                                        "column": 37
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 7655,
                                      "end": 7660,
                                      "loc": {
                                        "start": {
                                          "line": 223,
                                          "column": 24
                                        },
                                        "end": {
                                          "line": 223,
                                          "column": 29
                                        }
                                      },
                                      "name": "THREE"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 7661,
                                      "end": 7668,
                                      "loc": {
                                        "start": {
                                          "line": 223,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 223,
                                          "column": 37
                                        }
                                      },
                                      "name": "Vector2"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Literal",
                                      "start": 7669,
                                      "end": 7670,
                                      "loc": {
                                        "start": {
                                          "line": 223,
                                          "column": 38
                                        },
                                        "end": {
                                          "line": 223,
                                          "column": 39
                                        }
                                      },
                                      "value": 0,
                                      "rawValue": 0,
                                      "raw": "0"
                                    },
                                    {
                                      "type": "Literal",
                                      "start": 7672,
                                      "end": 7673,
                                      "loc": {
                                        "start": {
                                          "line": 223,
                                          "column": 41
                                        },
                                        "end": {
                                          "line": 223,
                                          "column": 42
                                        }
                                      },
                                      "value": 0,
                                      "rawValue": 0,
                                      "raw": "0"
                                    }
                                  ]
                                }
                              ]
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7676,
                              "end": 7682,
                              "loc": {
                                "start": {
                                  "line": 223,
                                  "column": 45
                                },
                                "end": {
                                  "line": 223,
                                  "column": 51
                                }
                              },
                              "name": "concat"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 7683,
                              "end": 7691,
                              "loc": {
                                "start": {
                                  "line": 223,
                                  "column": 52
                                },
                                "end": {
                                  "line": 223,
                                  "column": 60
                                }
                              },
                              "name": "posArray"
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ForOfStatement",
                      "start": 7702,
                      "end": 7758,
                      "loc": {
                        "start": {
                          "line": 224,
                          "column": 8
                        },
                        "end": {
                          "line": 225,
                          "column": 30
                        }
                      },
                      "left": {
                        "type": "VariableDeclaration",
                        "start": 7707,
                        "end": 7714,
                        "loc": {
                          "start": {
                            "line": 224,
                            "column": 13
                          },
                          "end": {
                            "line": 224,
                            "column": 20
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 7711,
                            "end": 7714,
                            "loc": {
                              "start": {
                                "line": 224,
                                "column": 17
                              },
                              "end": {
                                "line": 224,
                                "column": 20
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 7711,
                              "end": 7714,
                              "loc": {
                                "start": {
                                  "line": 224,
                                  "column": 17
                                },
                                "end": {
                                  "line": 224,
                                  "column": 20
                                }
                              },
                              "name": "pos"
                            },
                            "init": null
                          }
                        ],
                        "kind": "let"
                      },
                      "right": {
                        "type": "Identifier",
                        "start": 7718,
                        "end": 7726,
                        "loc": {
                          "start": {
                            "line": 224,
                            "column": 24
                          },
                          "end": {
                            "line": 224,
                            "column": 32
                          }
                        },
                        "name": "posArray"
                      },
                      "body": {
                        "type": "ExpressionStatement",
                        "start": 7740,
                        "end": 7758,
                        "loc": {
                          "start": {
                            "line": 225,
                            "column": 12
                          },
                          "end": {
                            "line": 225,
                            "column": 30
                          }
                        },
                        "expression": {
                          "type": "CallExpression",
                          "start": 7740,
                          "end": 7757,
                          "loc": {
                            "start": {
                              "line": 225,
                              "column": 12
                            },
                            "end": {
                              "line": 225,
                              "column": 29
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 7740,
                            "end": 7747,
                            "loc": {
                              "start": {
                                "line": 225,
                                "column": 12
                              },
                              "end": {
                                "line": 225,
                                "column": 19
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 7740,
                              "end": 7743,
                              "loc": {
                                "start": {
                                  "line": 225,
                                  "column": 12
                                },
                                "end": {
                                  "line": 225,
                                  "column": 15
                                }
                              },
                              "name": "pos"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7744,
                              "end": 7747,
                              "loc": {
                                "start": {
                                  "line": 225,
                                  "column": 16
                                },
                                "end": {
                                  "line": 225,
                                  "column": 19
                                }
                              },
                              "name": "add"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 7748,
                              "end": 7756,
                              "loc": {
                                "start": {
                                  "line": 225,
                                  "column": 20
                                },
                                "end": {
                                  "line": 225,
                                  "column": 28
                                }
                              },
                              "name": "keyPoint"
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 7767,
                      "end": 7783,
                      "loc": {
                        "start": {
                          "line": 226,
                          "column": 8
                        },
                        "end": {
                          "line": 226,
                          "column": 24
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 7774,
                        "end": 7782,
                        "loc": {
                          "start": {
                            "line": 226,
                            "column": 15
                          },
                          "end": {
                            "line": 226,
                            "column": 23
                          }
                        },
                        "name": "posArray"
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 7794,
              "end": 8578,
              "loc": {
                "start": {
                  "line": 228,
                  "column": 4
                },
                "end": {
                  "line": 245,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 7800,
                "end": 7810,
                "loc": {
                  "start": {
                    "line": 228,
                    "column": 10
                  },
                  "end": {
                    "line": 228,
                    "column": 20
                  }
                },
                "name": "dragObject"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 7810,
                "end": 8578,
                "loc": {
                  "start": {
                    "line": 228,
                    "column": 20
                  },
                  "end": {
                    "line": 245,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 7811,
                    "end": 7814,
                    "loc": {
                      "start": {
                        "line": 228,
                        "column": 21
                      },
                      "end": {
                        "line": 228,
                        "column": 24
                      }
                    },
                    "name": "obj"
                  },
                  {
                    "type": "Identifier",
                    "start": 7816,
                    "end": 7824,
                    "loc": {
                      "start": {
                        "line": 228,
                        "column": 26
                      },
                      "end": {
                        "line": 228,
                        "column": 34
                      }
                    },
                    "name": "posArray"
                  },
                  {
                    "type": "Identifier",
                    "start": 7826,
                    "end": 7834,
                    "loc": {
                      "start": {
                        "line": 228,
                        "column": 36
                      },
                      "end": {
                        "line": 228,
                        "column": 44
                      }
                    },
                    "name": "absolute"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 7836,
                  "end": 8578,
                  "loc": {
                    "start": {
                      "line": 228,
                      "column": 46
                    },
                    "end": {
                      "line": 245,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 7846,
                      "end": 7932,
                      "loc": {
                        "start": {
                          "line": 229,
                          "column": 8
                        },
                        "end": {
                          "line": 230,
                          "column": 71
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 7850,
                        "end": 7859,
                        "loc": {
                          "start": {
                            "line": 229,
                            "column": 12
                          },
                          "end": {
                            "line": 229,
                            "column": 21
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "Identifier",
                          "start": 7851,
                          "end": 7859,
                          "loc": {
                            "start": {
                              "line": 229,
                              "column": 13
                            },
                            "end": {
                              "line": 229,
                              "column": 21
                            }
                          },
                          "name": "absolute"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 7873,
                        "end": 7932,
                        "loc": {
                          "start": {
                            "line": 230,
                            "column": 12
                          },
                          "end": {
                            "line": 230,
                            "column": 71
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 7873,
                          "end": 7931,
                          "loc": {
                            "start": {
                              "line": 230,
                              "column": 12
                            },
                            "end": {
                              "line": 230,
                              "column": 70
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "Identifier",
                            "start": 7873,
                            "end": 7881,
                            "loc": {
                              "start": {
                                "line": 230,
                                "column": 12
                              },
                              "end": {
                                "line": 230,
                                "column": 20
                              }
                            },
                            "name": "posArray"
                          },
                          "right": {
                            "type": "CallExpression",
                            "start": 7884,
                            "end": 7931,
                            "loc": {
                              "start": {
                                "line": 230,
                                "column": 23
                              },
                              "end": {
                                "line": 230,
                                "column": 70
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 7884,
                              "end": 7916,
                              "loc": {
                                "start": {
                                  "line": 230,
                                  "column": 23
                                },
                                "end": {
                                  "line": 230,
                                  "column": 55
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 7884,
                                "end": 7888,
                                "loc": {
                                  "start": {
                                    "line": 230,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 230,
                                    "column": 27
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 7889,
                                "end": 7916,
                                "loc": {
                                  "start": {
                                    "line": 230,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 230,
                                    "column": 55
                                  }
                                },
                                "name": "_dragPathRelativeToAbsolute"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 7917,
                                "end": 7920,
                                "loc": {
                                  "start": {
                                    "line": 230,
                                    "column": 56
                                  },
                                  "end": {
                                    "line": 230,
                                    "column": 59
                                  }
                                },
                                "name": "obj"
                              },
                              {
                                "type": "Identifier",
                                "start": 7922,
                                "end": 7930,
                                "loc": {
                                  "start": {
                                    "line": 230,
                                    "column": 61
                                  },
                                  "end": {
                                    "line": 230,
                                    "column": 69
                                  }
                                },
                                "name": "posArray"
                              }
                            ]
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 7941,
                      "end": 8019,
                      "loc": {
                        "start": {
                          "line": 231,
                          "column": 8
                        },
                        "end": {
                          "line": 231,
                          "column": 86
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 7941,
                        "end": 8018,
                        "loc": {
                          "start": {
                            "line": 231,
                            "column": 8
                          },
                          "end": {
                            "line": 231,
                            "column": 85
                          }
                        },
                        "callee": {
                          "type": "Identifier",
                          "start": 7941,
                          "end": 7946,
                          "loc": {
                            "start": {
                              "line": 231,
                              "column": 8
                            },
                            "end": {
                              "line": 231,
                              "column": 13
                            }
                          },
                          "name": "check"
                        },
                        "arguments": [
                          {
                            "type": "BinaryExpression",
                            "start": 7947,
                            "end": 7967,
                            "loc": {
                              "start": {
                                "line": 231,
                                "column": 14
                              },
                              "end": {
                                "line": 231,
                                "column": 34
                              }
                            },
                            "left": {
                              "type": "MemberExpression",
                              "start": 7947,
                              "end": 7962,
                              "loc": {
                                "start": {
                                  "line": 231,
                                  "column": 14
                                },
                                "end": {
                                  "line": 231,
                                  "column": 29
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 7947,
                                "end": 7955,
                                "loc": {
                                  "start": {
                                    "line": 231,
                                    "column": 14
                                  },
                                  "end": {
                                    "line": 231,
                                    "column": 22
                                  }
                                },
                                "name": "posArray"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 7956,
                                "end": 7962,
                                "loc": {
                                  "start": {
                                    "line": 231,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 231,
                                    "column": 29
                                  }
                                },
                                "name": "length"
                              },
                              "computed": false
                            },
                            "operator": ">=",
                            "right": {
                              "type": "Literal",
                              "start": 7966,
                              "end": 7967,
                              "loc": {
                                "start": {
                                  "line": 231,
                                  "column": 33
                                },
                                "end": {
                                  "line": 231,
                                  "column": 34
                                }
                              },
                              "value": 2,
                              "rawValue": 2,
                              "raw": "2"
                            }
                          },
                          {
                            "type": "Literal",
                            "start": 7969,
                            "end": 8017,
                            "loc": {
                              "start": {
                                "line": 231,
                                "column": 36
                              },
                              "end": {
                                "line": 231,
                                "column": 84
                              }
                            },
                            "value": "Dragging object along less than two key points",
                            "rawValue": "Dragging object along less than two key points",
                            "raw": "\"Dragging object along less than two key points\""
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 8029,
                      "end": 8060,
                      "loc": {
                        "start": {
                          "line": 233,
                          "column": 8
                        },
                        "end": {
                          "line": 233,
                          "column": 39
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 8029,
                        "end": 8059,
                        "loc": {
                          "start": {
                            "line": 233,
                            "column": 8
                          },
                          "end": {
                            "line": 233,
                            "column": 38
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "Identifier",
                          "start": 8029,
                          "end": 8037,
                          "loc": {
                            "start": {
                              "line": 233,
                              "column": 8
                            },
                            "end": {
                              "line": 233,
                              "column": 16
                            }
                          },
                          "name": "posArray"
                        },
                        "right": {
                          "type": "CallExpression",
                          "start": 8040,
                          "end": 8059,
                          "loc": {
                            "start": {
                              "line": 233,
                              "column": 19
                            },
                            "end": {
                              "line": 233,
                              "column": 38
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 8040,
                            "end": 8049,
                            "loc": {
                              "start": {
                                "line": 233,
                                "column": 19
                              },
                              "end": {
                                "line": 233,
                                "column": 28
                              }
                            },
                            "object": {
                              "type": "ArrayExpression",
                              "start": 8040,
                              "end": 8042,
                              "loc": {
                                "start": {
                                  "line": 233,
                                  "column": 19
                                },
                                "end": {
                                  "line": 233,
                                  "column": 21
                                }
                              },
                              "elements": []
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 8043,
                              "end": 8049,
                              "loc": {
                                "start": {
                                  "line": 233,
                                  "column": 22
                                },
                                "end": {
                                  "line": 233,
                                  "column": 28
                                }
                              },
                              "name": "concat"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 8050,
                              "end": 8058,
                              "loc": {
                                "start": {
                                  "line": 233,
                                  "column": 29
                                },
                                "end": {
                                  "line": 233,
                                  "column": 37
                                }
                              },
                              "name": "posArray"
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 8069,
                      "end": 8251,
                      "loc": {
                        "start": {
                          "line": 234,
                          "column": 8
                        },
                        "end": {
                          "line": 238,
                          "column": 9
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 8073,
                          "end": 8251,
                          "loc": {
                            "start": {
                              "line": 234,
                              "column": 12
                            },
                            "end": {
                              "line": 238,
                              "column": 9
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 8073,
                            "end": 8087,
                            "loc": {
                              "start": {
                                "line": 234,
                                "column": 12
                              },
                              "end": {
                                "line": 234,
                                "column": 26
                              }
                            },
                            "name": "handleKeyPoint"
                          },
                          "init": {
                            "type": "ArrowFunctionExpression",
                            "start": 8090,
                            "end": 8251,
                            "loc": {
                              "start": {
                                "line": 234,
                                "column": 29
                              },
                              "end": {
                                "line": 238,
                                "column": 9
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": true,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 8097,
                                "end": 8100,
                                "loc": {
                                  "start": {
                                    "line": 234,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 234,
                                    "column": 39
                                  }
                                },
                                "name": "pos"
                              },
                              {
                                "type": "Identifier",
                                "start": 8102,
                                "end": 8106,
                                "loc": {
                                  "start": {
                                    "line": 234,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 234,
                                    "column": 45
                                  }
                                },
                                "name": "type"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 8111,
                              "end": 8251,
                              "loc": {
                                "start": {
                                  "line": 234,
                                  "column": 50
                                },
                                "end": {
                                  "line": 238,
                                  "column": 9
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 8125,
                                  "end": 8154,
                                  "loc": {
                                    "start": {
                                      "line": 235,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 235,
                                      "column": 41
                                    }
                                  },
                                  "expression": {
                                    "type": "AwaitExpression",
                                    "start": 8125,
                                    "end": 8153,
                                    "loc": {
                                      "start": {
                                        "line": 235,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 235,
                                        "column": 40
                                      }
                                    },
                                    "all": false,
                                    "argument": {
                                      "type": "CallExpression",
                                      "start": 8131,
                                      "end": 8153,
                                      "loc": {
                                        "start": {
                                          "line": 235,
                                          "column": 18
                                        },
                                        "end": {
                                          "line": 235,
                                          "column": 40
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 8131,
                                        "end": 8148,
                                        "loc": {
                                          "start": {
                                            "line": 235,
                                            "column": 18
                                          },
                                          "end": {
                                            "line": 235,
                                            "column": 35
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 8131,
                                          "end": 8135,
                                          "loc": {
                                            "start": {
                                              "line": 235,
                                              "column": 18
                                            },
                                            "end": {
                                              "line": 235,
                                              "column": 22
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 8136,
                                          "end": 8148,
                                          "loc": {
                                            "start": {
                                              "line": 235,
                                              "column": 23
                                            },
                                            "end": {
                                              "line": 235,
                                              "column": 35
                                            }
                                          },
                                          "name": "_mouseMoveTo"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 8149,
                                          "end": 8152,
                                          "loc": {
                                            "start": {
                                              "line": 235,
                                              "column": 36
                                            },
                                            "end": {
                                              "line": 235,
                                              "column": 39
                                            }
                                          },
                                          "name": "pos"
                                        }
                                      ]
                                    }
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 8167,
                                  "end": 8210,
                                  "loc": {
                                    "start": {
                                      "line": 236,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 236,
                                      "column": 55
                                    }
                                  },
                                  "expression": {
                                    "type": "AwaitExpression",
                                    "start": 8167,
                                    "end": 8209,
                                    "loc": {
                                      "start": {
                                        "line": 236,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 236,
                                        "column": 54
                                      }
                                    },
                                    "all": false,
                                    "argument": {
                                      "type": "CallExpression",
                                      "start": 8173,
                                      "end": 8209,
                                      "loc": {
                                        "start": {
                                          "line": 236,
                                          "column": 18
                                        },
                                        "end": {
                                          "line": 236,
                                          "column": 54
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 8173,
                                        "end": 8194,
                                        "loc": {
                                          "start": {
                                            "line": 236,
                                            "column": 18
                                          },
                                          "end": {
                                            "line": 236,
                                            "column": 39
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 8173,
                                          "end": 8177,
                                          "loc": {
                                            "start": {
                                              "line": 236,
                                              "column": 18
                                            },
                                            "end": {
                                              "line": 236,
                                              "column": 22
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 8178,
                                          "end": 8194,
                                          "loc": {
                                            "start": {
                                              "line": 236,
                                              "column": 23
                                            },
                                            "end": {
                                              "line": 236,
                                              "column": 39
                                            }
                                          },
                                          "name": "_interactionEmit"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 8195,
                                          "end": 8198,
                                          "loc": {
                                            "start": {
                                              "line": 236,
                                              "column": 40
                                            },
                                            "end": {
                                              "line": 236,
                                              "column": 43
                                            }
                                          },
                                          "name": "obj"
                                        },
                                        {
                                          "type": "Identifier",
                                          "start": 8200,
                                          "end": 8204,
                                          "loc": {
                                            "start": {
                                              "line": 236,
                                              "column": 45
                                            },
                                            "end": {
                                              "line": 236,
                                              "column": 49
                                            }
                                          },
                                          "name": "type"
                                        },
                                        {
                                          "type": "ObjectExpression",
                                          "start": 8206,
                                          "end": 8208,
                                          "loc": {
                                            "start": {
                                              "line": 236,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 236,
                                              "column": 53
                                            }
                                          },
                                          "properties": []
                                        }
                                      ]
                                    }
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 8223,
                                  "end": 8241,
                                  "loc": {
                                    "start": {
                                      "line": 237,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 237,
                                      "column": 30
                                    }
                                  },
                                  "expression": {
                                    "type": "AwaitExpression",
                                    "start": 8223,
                                    "end": 8240,
                                    "loc": {
                                      "start": {
                                        "line": 237,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 237,
                                        "column": 29
                                      }
                                    },
                                    "all": false,
                                    "argument": {
                                      "type": "CallExpression",
                                      "start": 8229,
                                      "end": 8240,
                                      "loc": {
                                        "start": {
                                          "line": 237,
                                          "column": 18
                                        },
                                        "end": {
                                          "line": 237,
                                          "column": 29
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 8229,
                                        "end": 8238,
                                        "loc": {
                                          "start": {
                                            "line": 237,
                                            "column": 18
                                          },
                                          "end": {
                                            "line": 237,
                                            "column": 27
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 8229,
                                          "end": 8233,
                                          "loc": {
                                            "start": {
                                              "line": 237,
                                              "column": 18
                                            },
                                            "end": {
                                              "line": 237,
                                              "column": 22
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 8234,
                                          "end": 8238,
                                          "loc": {
                                            "start": {
                                              "line": 237,
                                              "column": 23
                                            },
                                            "end": {
                                              "line": 237,
                                              "column": 27
                                            }
                                          },
                                          "name": "tick"
                                        },
                                        "computed": false
                                      },
                                      "arguments": []
                                    }
                                  }
                                }
                              ]
                            }
                          }
                        }
                      ],
                      "kind": "let"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 8260,
                      "end": 8286,
                      "loc": {
                        "start": {
                          "line": 239,
                          "column": 8
                        },
                        "end": {
                          "line": 239,
                          "column": 34
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 8264,
                          "end": 8285,
                          "loc": {
                            "start": {
                              "line": 239,
                              "column": 12
                            },
                            "end": {
                              "line": 239,
                              "column": 33
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 8264,
                            "end": 8267,
                            "loc": {
                              "start": {
                                "line": 239,
                                "column": 12
                              },
                              "end": {
                                "line": 239,
                                "column": 15
                              }
                            },
                            "name": "len"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 8270,
                            "end": 8285,
                            "loc": {
                              "start": {
                                "line": 239,
                                "column": 18
                              },
                              "end": {
                                "line": 239,
                                "column": 33
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 8270,
                              "end": 8278,
                              "loc": {
                                "start": {
                                  "line": 239,
                                  "column": 18
                                },
                                "end": {
                                  "line": 239,
                                  "column": 26
                                }
                              },
                              "name": "posArray"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 8279,
                              "end": 8285,
                              "loc": {
                                "start": {
                                  "line": 239,
                                  "column": 27
                                },
                                "end": {
                                  "line": 239,
                                  "column": 33
                                }
                              },
                              "name": "length"
                            },
                            "computed": false
                          }
                        }
                      ],
                      "kind": "let"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 8296,
                      "end": 8366,
                      "loc": {
                        "start": {
                          "line": 241,
                          "column": 8
                        },
                        "end": {
                          "line": 241,
                          "column": 78
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 8296,
                        "end": 8365,
                        "loc": {
                          "start": {
                            "line": 241,
                            "column": 8
                          },
                          "end": {
                            "line": 241,
                            "column": 77
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 8302,
                          "end": 8365,
                          "loc": {
                            "start": {
                              "line": 241,
                              "column": 14
                            },
                            "end": {
                              "line": 241,
                              "column": 77
                            }
                          },
                          "callee": {
                            "type": "Identifier",
                            "start": 8302,
                            "end": 8316,
                            "loc": {
                              "start": {
                                "line": 241,
                                "column": 14
                              },
                              "end": {
                                "line": 241,
                                "column": 28
                              }
                            },
                            "name": "handleKeyPoint"
                          },
                          "arguments": [
                            {
                              "type": "MemberExpression",
                              "start": 8317,
                              "end": 8328,
                              "loc": {
                                "start": {
                                  "line": 241,
                                  "column": 29
                                },
                                "end": {
                                  "line": 241,
                                  "column": 40
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 8317,
                                "end": 8325,
                                "loc": {
                                  "start": {
                                    "line": 241,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 241,
                                    "column": 37
                                  }
                                },
                                "name": "posArray"
                              },
                              "property": {
                                "type": "Literal",
                                "start": 8326,
                                "end": 8327,
                                "loc": {
                                  "start": {
                                    "line": 241,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 241,
                                    "column": 39
                                  }
                                },
                                "value": 0,
                                "rawValue": 0,
                                "raw": "0"
                              },
                              "computed": true
                            },
                            {
                              "type": "MemberExpression",
                              "start": 8330,
                              "end": 8364,
                              "loc": {
                                "start": {
                                  "line": 241,
                                  "column": 42
                                },
                                "end": {
                                  "line": 241,
                                  "column": 76
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 8330,
                                "end": 8357,
                                "loc": {
                                  "start": {
                                    "line": 241,
                                    "column": 42
                                  },
                                  "end": {
                                    "line": 241,
                                    "column": 69
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 8330,
                                  "end": 8345,
                                  "loc": {
                                    "start": {
                                      "line": 241,
                                      "column": 42
                                    },
                                    "end": {
                                      "line": 241,
                                      "column": 57
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 8330,
                                    "end": 8338,
                                    "loc": {
                                      "start": {
                                        "line": 241,
                                        "column": 42
                                      },
                                      "end": {
                                        "line": 241,
                                        "column": 50
                                      }
                                    },
                                    "name": "Object3D"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 8339,
                                    "end": 8345,
                                    "loc": {
                                      "start": {
                                        "line": 241,
                                        "column": 51
                                      },
                                      "end": {
                                        "line": 241,
                                        "column": 57
                                      }
                                    },
                                    "name": "Events"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 8346,
                                  "end": 8357,
                                  "loc": {
                                    "start": {
                                      "line": 241,
                                      "column": 58
                                    },
                                    "end": {
                                      "line": 241,
                                      "column": 69
                                    }
                                  },
                                  "name": "Interaction"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 8358,
                                "end": 8364,
                                "loc": {
                                  "start": {
                                    "line": 241,
                                    "column": 70
                                  },
                                  "end": {
                                    "line": 241,
                                    "column": 76
                                  }
                                },
                                "name": "Picked"
                              },
                              "computed": false
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ForStatement",
                      "start": 8375,
                      "end": 8488,
                      "loc": {
                        "start": {
                          "line": 242,
                          "column": 8
                        },
                        "end": {
                          "line": 243,
                          "column": 83
                        }
                      },
                      "init": {
                        "type": "VariableDeclaration",
                        "start": 8380,
                        "end": 8389,
                        "loc": {
                          "start": {
                            "line": 242,
                            "column": 13
                          },
                          "end": {
                            "line": 242,
                            "column": 22
                          }
                        },
                        "declarations": [
                          {
                            "type": "VariableDeclarator",
                            "start": 8384,
                            "end": 8389,
                            "loc": {
                              "start": {
                                "line": 242,
                                "column": 17
                              },
                              "end": {
                                "line": 242,
                                "column": 22
                              }
                            },
                            "id": {
                              "type": "Identifier",
                              "start": 8384,
                              "end": 8385,
                              "loc": {
                                "start": {
                                  "line": 242,
                                  "column": 17
                                },
                                "end": {
                                  "line": 242,
                                  "column": 18
                                }
                              },
                              "name": "i"
                            },
                            "init": {
                              "type": "Literal",
                              "start": 8388,
                              "end": 8389,
                              "loc": {
                                "start": {
                                  "line": 242,
                                  "column": 21
                                },
                                "end": {
                                  "line": 242,
                                  "column": 22
                                }
                              },
                              "value": 0,
                              "rawValue": 0,
                              "raw": "0"
                            }
                          }
                        ],
                        "kind": "let"
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 8391,
                        "end": 8398,
                        "loc": {
                          "start": {
                            "line": 242,
                            "column": 24
                          },
                          "end": {
                            "line": 242,
                            "column": 31
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 8391,
                          "end": 8392,
                          "loc": {
                            "start": {
                              "line": 242,
                              "column": 24
                            },
                            "end": {
                              "line": 242,
                              "column": 25
                            }
                          },
                          "name": "i"
                        },
                        "operator": "<",
                        "right": {
                          "type": "Identifier",
                          "start": 8395,
                          "end": 8398,
                          "loc": {
                            "start": {
                              "line": 242,
                              "column": 28
                            },
                            "end": {
                              "line": 242,
                              "column": 31
                            }
                          },
                          "name": "len"
                        }
                      },
                      "update": {
                        "type": "UpdateExpression",
                        "start": 8400,
                        "end": 8403,
                        "loc": {
                          "start": {
                            "line": 242,
                            "column": 33
                          },
                          "end": {
                            "line": 242,
                            "column": 36
                          }
                        },
                        "operator": "++",
                        "prefix": false,
                        "argument": {
                          "type": "Identifier",
                          "start": 8400,
                          "end": 8401,
                          "loc": {
                            "start": {
                              "line": 242,
                              "column": 33
                            },
                            "end": {
                              "line": 242,
                              "column": 34
                            }
                          },
                          "name": "i"
                        }
                      },
                      "body": {
                        "type": "ExpressionStatement",
                        "start": 8417,
                        "end": 8488,
                        "loc": {
                          "start": {
                            "line": 243,
                            "column": 12
                          },
                          "end": {
                            "line": 243,
                            "column": 83
                          }
                        },
                        "expression": {
                          "type": "AwaitExpression",
                          "start": 8417,
                          "end": 8487,
                          "loc": {
                            "start": {
                              "line": 243,
                              "column": 12
                            },
                            "end": {
                              "line": 243,
                              "column": 82
                            }
                          },
                          "all": false,
                          "argument": {
                            "type": "CallExpression",
                            "start": 8423,
                            "end": 8487,
                            "loc": {
                              "start": {
                                "line": 243,
                                "column": 18
                              },
                              "end": {
                                "line": 243,
                                "column": 82
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 8423,
                              "end": 8437,
                              "loc": {
                                "start": {
                                  "line": 243,
                                  "column": 18
                                },
                                "end": {
                                  "line": 243,
                                  "column": 32
                                }
                              },
                              "name": "handleKeyPoint"
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 8438,
                                "end": 8449,
                                "loc": {
                                  "start": {
                                    "line": 243,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 243,
                                    "column": 44
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 8438,
                                  "end": 8446,
                                  "loc": {
                                    "start": {
                                      "line": 243,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 243,
                                      "column": 41
                                    }
                                  },
                                  "name": "posArray"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 8447,
                                  "end": 8448,
                                  "loc": {
                                    "start": {
                                      "line": 243,
                                      "column": 42
                                    },
                                    "end": {
                                      "line": 243,
                                      "column": 43
                                    }
                                  },
                                  "name": "i"
                                },
                                "computed": true
                              },
                              {
                                "type": "MemberExpression",
                                "start": 8451,
                                "end": 8486,
                                "loc": {
                                  "start": {
                                    "line": 243,
                                    "column": 46
                                  },
                                  "end": {
                                    "line": 243,
                                    "column": 81
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 8451,
                                  "end": 8478,
                                  "loc": {
                                    "start": {
                                      "line": 243,
                                      "column": 46
                                    },
                                    "end": {
                                      "line": 243,
                                      "column": 73
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 8451,
                                    "end": 8466,
                                    "loc": {
                                      "start": {
                                        "line": 243,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 243,
                                        "column": 61
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 8451,
                                      "end": 8459,
                                      "loc": {
                                        "start": {
                                          "line": 243,
                                          "column": 46
                                        },
                                        "end": {
                                          "line": 243,
                                          "column": 54
                                        }
                                      },
                                      "name": "Object3D"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 8460,
                                      "end": 8466,
                                      "loc": {
                                        "start": {
                                          "line": 243,
                                          "column": 55
                                        },
                                        "end": {
                                          "line": 243,
                                          "column": 61
                                        }
                                      },
                                      "name": "Events"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 8467,
                                    "end": 8478,
                                    "loc": {
                                      "start": {
                                        "line": 243,
                                        "column": 62
                                      },
                                      "end": {
                                        "line": 243,
                                        "column": 73
                                      }
                                    },
                                    "name": "Interaction"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 8479,
                                  "end": 8486,
                                  "loc": {
                                    "start": {
                                      "line": 243,
                                      "column": 74
                                    },
                                    "end": {
                                      "line": 243,
                                      "column": 81
                                    }
                                  },
                                  "name": "Dragged"
                                },
                                "computed": false
                              }
                            ]
                          }
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 8497,
                      "end": 8572,
                      "loc": {
                        "start": {
                          "line": 244,
                          "column": 8
                        },
                        "end": {
                          "line": 244,
                          "column": 83
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 8497,
                        "end": 8571,
                        "loc": {
                          "start": {
                            "line": 244,
                            "column": 8
                          },
                          "end": {
                            "line": 244,
                            "column": 82
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 8503,
                          "end": 8571,
                          "loc": {
                            "start": {
                              "line": 244,
                              "column": 14
                            },
                            "end": {
                              "line": 244,
                              "column": 82
                            }
                          },
                          "callee": {
                            "type": "Identifier",
                            "start": 8503,
                            "end": 8517,
                            "loc": {
                              "start": {
                                "line": 244,
                                "column": 14
                              },
                              "end": {
                                "line": 244,
                                "column": 28
                              }
                            },
                            "name": "handleKeyPoint"
                          },
                          "arguments": [
                            {
                              "type": "MemberExpression",
                              "start": 8518,
                              "end": 8533,
                              "loc": {
                                "start": {
                                  "line": 244,
                                  "column": 29
                                },
                                "end": {
                                  "line": 244,
                                  "column": 44
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 8518,
                                "end": 8526,
                                "loc": {
                                  "start": {
                                    "line": 244,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 244,
                                    "column": 37
                                  }
                                },
                                "name": "posArray"
                              },
                              "property": {
                                "type": "BinaryExpression",
                                "start": 8527,
                                "end": 8532,
                                "loc": {
                                  "start": {
                                    "line": 244,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 244,
                                    "column": 43
                                  }
                                },
                                "left": {
                                  "type": "Identifier",
                                  "start": 8527,
                                  "end": 8530,
                                  "loc": {
                                    "start": {
                                      "line": 244,
                                      "column": 38
                                    },
                                    "end": {
                                      "line": 244,
                                      "column": 41
                                    }
                                  },
                                  "name": "len"
                                },
                                "operator": "-",
                                "right": {
                                  "type": "Literal",
                                  "start": 8531,
                                  "end": 8532,
                                  "loc": {
                                    "start": {
                                      "line": 244,
                                      "column": 42
                                    },
                                    "end": {
                                      "line": 244,
                                      "column": 43
                                    }
                                  },
                                  "value": 1,
                                  "rawValue": 1,
                                  "raw": "1"
                                }
                              },
                              "computed": true
                            },
                            {
                              "type": "MemberExpression",
                              "start": 8535,
                              "end": 8570,
                              "loc": {
                                "start": {
                                  "line": 244,
                                  "column": 46
                                },
                                "end": {
                                  "line": 244,
                                  "column": 81
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 8535,
                                "end": 8562,
                                "loc": {
                                  "start": {
                                    "line": 244,
                                    "column": 46
                                  },
                                  "end": {
                                    "line": 244,
                                    "column": 73
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 8535,
                                  "end": 8550,
                                  "loc": {
                                    "start": {
                                      "line": 244,
                                      "column": 46
                                    },
                                    "end": {
                                      "line": 244,
                                      "column": 61
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 8535,
                                    "end": 8543,
                                    "loc": {
                                      "start": {
                                        "line": 244,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 244,
                                        "column": 54
                                      }
                                    },
                                    "name": "Object3D"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 8544,
                                    "end": 8550,
                                    "loc": {
                                      "start": {
                                        "line": 244,
                                        "column": 55
                                      },
                                      "end": {
                                        "line": 244,
                                        "column": 61
                                      }
                                    },
                                    "name": "Events"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 8551,
                                  "end": 8562,
                                  "loc": {
                                    "start": {
                                      "line": 244,
                                      "column": 62
                                    },
                                    "end": {
                                      "line": 244,
                                      "column": 73
                                    }
                                  },
                                  "name": "Interaction"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 8563,
                                "end": 8570,
                                "loc": {
                                  "start": {
                                    "line": 244,
                                    "column": 74
                                  },
                                  "end": {
                                    "line": 244,
                                    "column": 81
                                  }
                                },
                                "name": "Dropped"
                              },
                              "computed": false
                            }
                          ]
                        }
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 8583,
              "end": 8974,
              "loc": {
                "start": {
                  "line": 246,
                  "column": 4
                },
                "end": {
                  "line": 251,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 8589,
                "end": 8604,
                "loc": {
                  "start": {
                    "line": 246,
                    "column": 10
                  },
                  "end": {
                    "line": 246,
                    "column": 25
                  }
                },
                "name": "dragSketchPoint"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 8604,
                "end": 8974,
                "loc": {
                  "start": {
                    "line": 246,
                    "column": 25
                  },
                  "end": {
                    "line": 251,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 8605,
                    "end": 8608,
                    "loc": {
                      "start": {
                        "line": 246,
                        "column": 26
                      },
                      "end": {
                        "line": 246,
                        "column": 29
                      }
                    },
                    "name": "obj"
                  },
                  {
                    "type": "Identifier",
                    "start": 8610,
                    "end": 8618,
                    "loc": {
                      "start": {
                        "line": 246,
                        "column": 31
                      },
                      "end": {
                        "line": 246,
                        "column": 39
                      }
                    },
                    "name": "posArray"
                  },
                  {
                    "type": "Identifier",
                    "start": 8620,
                    "end": 8628,
                    "loc": {
                      "start": {
                        "line": 246,
                        "column": 41
                      },
                      "end": {
                        "line": 246,
                        "column": 49
                      }
                    },
                    "name": "absolute"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 8630,
                  "end": 8974,
                  "loc": {
                    "start": {
                      "line": 246,
                      "column": 51
                    },
                    "end": {
                      "line": 251,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 8640,
                      "end": 8707,
                      "loc": {
                        "start": {
                          "line": 247,
                          "column": 8
                        },
                        "end": {
                          "line": 247,
                          "column": 75
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 8640,
                        "end": 8706,
                        "loc": {
                          "start": {
                            "line": 247,
                            "column": 8
                          },
                          "end": {
                            "line": 247,
                            "column": 74
                          }
                        },
                        "callee": {
                          "type": "Identifier",
                          "start": 8640,
                          "end": 8645,
                          "loc": {
                            "start": {
                              "line": 247,
                              "column": 8
                            },
                            "end": {
                              "line": 247,
                              "column": 13
                            }
                          },
                          "name": "check"
                        },
                        "arguments": [
                          {
                            "type": "BinaryExpression",
                            "start": 8646,
                            "end": 8672,
                            "loc": {
                              "start": {
                                "line": 247,
                                "column": 14
                              },
                              "end": {
                                "line": 247,
                                "column": 40
                              }
                            },
                            "left": {
                              "type": "Identifier",
                              "start": 8646,
                              "end": 8649,
                              "loc": {
                                "start": {
                                  "line": 247,
                                  "column": 14
                                },
                                "end": {
                                  "line": 247,
                                  "column": 17
                                }
                              },
                              "name": "obj"
                            },
                            "operator": "instanceof",
                            "right": {
                              "type": "Identifier",
                              "start": 8661,
                              "end": 8672,
                              "loc": {
                                "start": {
                                  "line": 247,
                                  "column": 29
                                },
                                "end": {
                                  "line": 247,
                                  "column": 40
                                }
                              },
                              "name": "SketchPoint"
                            }
                          },
                          {
                            "type": "Literal",
                            "start": 8674,
                            "end": 8705,
                            "loc": {
                              "start": {
                                "line": 247,
                                "column": 42
                              },
                              "end": {
                                "line": 247,
                                "column": 73
                              }
                            },
                            "value": "Dragged object is not a point",
                            "rawValue": "Dragged object is not a point",
                            "raw": "\"Dragged object is not a point\""
                          }
                        ]
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 8716,
                      "end": 8780,
                      "loc": {
                        "start": {
                          "line": 248,
                          "column": 8
                        },
                        "end": {
                          "line": 248,
                          "column": 72
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 8720,
                          "end": 8779,
                          "loc": {
                            "start": {
                              "line": 248,
                              "column": 12
                            },
                            "end": {
                              "line": 248,
                              "column": 71
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 8720,
                            "end": 8727,
                            "loc": {
                              "start": {
                                "line": 248,
                                "column": 12
                              },
                              "end": {
                                "line": 248,
                                "column": 19
                              }
                            },
                            "name": "currPos"
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 8730,
                            "end": 8779,
                            "loc": {
                              "start": {
                                "line": 248,
                                "column": 22
                              },
                              "end": {
                                "line": 248,
                                "column": 71
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 8734,
                              "end": 8747,
                              "loc": {
                                "start": {
                                  "line": 248,
                                  "column": 26
                                },
                                "end": {
                                  "line": 248,
                                  "column": 39
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 8734,
                                "end": 8739,
                                "loc": {
                                  "start": {
                                    "line": 248,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 248,
                                    "column": 31
                                  }
                                },
                                "name": "THREE"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 8740,
                                "end": 8747,
                                "loc": {
                                  "start": {
                                    "line": 248,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 248,
                                    "column": 39
                                  }
                                },
                                "name": "Vector2"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 8748,
                                "end": 8762,
                                "loc": {
                                  "start": {
                                    "line": 248,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 248,
                                    "column": 54
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 8748,
                                  "end": 8760,
                                  "loc": {
                                    "start": {
                                      "line": 248,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 248,
                                      "column": 52
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 8748,
                                    "end": 8751,
                                    "loc": {
                                      "start": {
                                        "line": 248,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 248,
                                        "column": 43
                                      }
                                    },
                                    "name": "obj"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 8752,
                                    "end": 8760,
                                    "loc": {
                                      "start": {
                                        "line": 248,
                                        "column": 44
                                      },
                                      "end": {
                                        "line": 248,
                                        "column": 52
                                      }
                                    },
                                    "name": "position"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 8761,
                                  "end": 8762,
                                  "loc": {
                                    "start": {
                                      "line": 248,
                                      "column": 53
                                    },
                                    "end": {
                                      "line": 248,
                                      "column": 54
                                    }
                                  },
                                  "name": "x"
                                },
                                "computed": false
                              },
                              {
                                "type": "MemberExpression",
                                "start": 8764,
                                "end": 8778,
                                "loc": {
                                  "start": {
                                    "line": 248,
                                    "column": 56
                                  },
                                  "end": {
                                    "line": 248,
                                    "column": 70
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 8764,
                                  "end": 8776,
                                  "loc": {
                                    "start": {
                                      "line": 248,
                                      "column": 56
                                    },
                                    "end": {
                                      "line": 248,
                                      "column": 68
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 8764,
                                    "end": 8767,
                                    "loc": {
                                      "start": {
                                        "line": 248,
                                        "column": 56
                                      },
                                      "end": {
                                        "line": 248,
                                        "column": 59
                                      }
                                    },
                                    "name": "obj"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 8768,
                                    "end": 8776,
                                    "loc": {
                                      "start": {
                                        "line": 248,
                                        "column": 60
                                      },
                                      "end": {
                                        "line": 248,
                                        "column": 68
                                      }
                                    },
                                    "name": "position"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 8777,
                                  "end": 8778,
                                  "loc": {
                                    "start": {
                                      "line": 248,
                                      "column": 69
                                    },
                                    "end": {
                                      "line": 248,
                                      "column": 70
                                    }
                                  },
                                  "name": "y"
                                },
                                "computed": false
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "let"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 8789,
                      "end": 8912,
                      "loc": {
                        "start": {
                          "line": 249,
                          "column": 8
                        },
                        "end": {
                          "line": 249,
                          "column": 131
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 8789,
                        "end": 8911,
                        "loc": {
                          "start": {
                            "line": 249,
                            "column": 8
                          },
                          "end": {
                            "line": 249,
                            "column": 130
                          }
                        },
                        "callee": {
                          "type": "Identifier",
                          "start": 8789,
                          "end": 8794,
                          "loc": {
                            "start": {
                              "line": 249,
                              "column": 8
                            },
                            "end": {
                              "line": 249,
                              "column": 13
                            }
                          },
                          "name": "check"
                        },
                        "arguments": [
                          {
                            "type": "LogicalExpression",
                            "start": 8795,
                            "end": 8863,
                            "loc": {
                              "start": {
                                "line": 249,
                                "column": 14
                              },
                              "end": {
                                "line": 249,
                                "column": 82
                              }
                            },
                            "left": {
                              "type": "UnaryExpression",
                              "start": 8795,
                              "end": 8804,
                              "loc": {
                                "start": {
                                  "line": 249,
                                  "column": 14
                                },
                                "end": {
                                  "line": 249,
                                  "column": 23
                                }
                              },
                              "operator": "!",
                              "prefix": true,
                              "argument": {
                                "type": "Identifier",
                                "start": 8796,
                                "end": 8804,
                                "loc": {
                                  "start": {
                                    "line": 249,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 249,
                                    "column": 23
                                  }
                                },
                                "name": "absolute"
                              }
                            },
                            "operator": "||",
                            "right": {
                              "type": "BinaryExpression",
                              "start": 8808,
                              "end": 8863,
                              "loc": {
                                "start": {
                                  "line": 249,
                                  "column": 27
                                },
                                "end": {
                                  "line": 249,
                                  "column": 82
                                }
                              },
                              "left": {
                                "type": "CallExpression",
                                "start": 8808,
                                "end": 8839,
                                "loc": {
                                  "start": {
                                    "line": 249,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 249,
                                    "column": 58
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 8808,
                                  "end": 8826,
                                  "loc": {
                                    "start": {
                                      "line": 249,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 249,
                                      "column": 45
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 8808,
                                    "end": 8815,
                                    "loc": {
                                      "start": {
                                        "line": 249,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 249,
                                        "column": 34
                                      }
                                    },
                                    "name": "currPos"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 8816,
                                    "end": 8826,
                                    "loc": {
                                      "start": {
                                        "line": 249,
                                        "column": 35
                                      },
                                      "end": {
                                        "line": 249,
                                        "column": 45
                                      }
                                    },
                                    "name": "distanceTo"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "MemberExpression",
                                    "start": 8827,
                                    "end": 8838,
                                    "loc": {
                                      "start": {
                                        "line": 249,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 249,
                                        "column": 57
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 8827,
                                      "end": 8835,
                                      "loc": {
                                        "start": {
                                          "line": 249,
                                          "column": 46
                                        },
                                        "end": {
                                          "line": 249,
                                          "column": 54
                                        }
                                      },
                                      "name": "posArray"
                                    },
                                    "property": {
                                      "type": "Literal",
                                      "start": 8836,
                                      "end": 8837,
                                      "loc": {
                                        "start": {
                                          "line": 249,
                                          "column": 55
                                        },
                                        "end": {
                                          "line": 249,
                                          "column": 56
                                        }
                                      },
                                      "value": 0,
                                      "rawValue": 0,
                                      "raw": "0"
                                    },
                                    "computed": true
                                  }
                                ]
                              },
                              "operator": "<=",
                              "right": {
                                "type": "MemberExpression",
                                "start": 8843,
                                "end": 8863,
                                "loc": {
                                  "start": {
                                    "line": 249,
                                    "column": 62
                                  },
                                  "end": {
                                    "line": 249,
                                    "column": 82
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 8843,
                                  "end": 8847,
                                  "loc": {
                                    "start": {
                                      "line": 249,
                                      "column": 62
                                    },
                                    "end": {
                                      "line": 249,
                                      "column": 66
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 8848,
                                  "end": 8863,
                                  "loc": {
                                    "start": {
                                      "line": 249,
                                      "column": 67
                                    },
                                    "end": {
                                      "line": 249,
                                      "column": 82
                                    }
                                  },
                                  "name": "linearTolerance"
                                },
                                "computed": false
                              }
                            }
                          },
                          {
                            "type": "Literal",
                            "start": 8865,
                            "end": 8910,
                            "loc": {
                              "start": {
                                "line": 249,
                                "column": 84
                              },
                              "end": {
                                "line": 249,
                                "column": 129
                              }
                            },
                            "value": "Dragging point starting from wrong position",
                            "rawValue": "Dragging point starting from wrong position",
                            "raw": "\"Dragging point starting from wrong position\""
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 8921,
                      "end": 8968,
                      "loc": {
                        "start": {
                          "line": 250,
                          "column": 8
                        },
                        "end": {
                          "line": 250,
                          "column": 55
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 8921,
                        "end": 8967,
                        "loc": {
                          "start": {
                            "line": 250,
                            "column": 8
                          },
                          "end": {
                            "line": 250,
                            "column": 54
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 8927,
                          "end": 8967,
                          "loc": {
                            "start": {
                              "line": 250,
                              "column": 14
                            },
                            "end": {
                              "line": 250,
                              "column": 54
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 8927,
                            "end": 8942,
                            "loc": {
                              "start": {
                                "line": 250,
                                "column": 14
                              },
                              "end": {
                                "line": 250,
                                "column": 29
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 8927,
                              "end": 8931,
                              "loc": {
                                "start": {
                                  "line": 250,
                                  "column": 14
                                },
                                "end": {
                                  "line": 250,
                                  "column": 18
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 8932,
                              "end": 8942,
                              "loc": {
                                "start": {
                                  "line": 250,
                                  "column": 19
                                },
                                "end": {
                                  "line": 250,
                                  "column": 29
                                }
                              },
                              "name": "dragObject"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 8943,
                              "end": 8946,
                              "loc": {
                                "start": {
                                  "line": 250,
                                  "column": 30
                                },
                                "end": {
                                  "line": 250,
                                  "column": 33
                                }
                              },
                              "name": "obj"
                            },
                            {
                              "type": "Identifier",
                              "start": 8948,
                              "end": 8956,
                              "loc": {
                                "start": {
                                  "line": 250,
                                  "column": 35
                                },
                                "end": {
                                  "line": 250,
                                  "column": 43
                                }
                              },
                              "name": "posArray"
                            },
                            {
                              "type": "Identifier",
                              "start": 8958,
                              "end": 8966,
                              "loc": {
                                "start": {
                                  "line": 250,
                                  "column": 45
                                },
                                "end": {
                                  "line": 250,
                                  "column": 53
                                }
                              },
                              "name": "absolute"
                            }
                          ]
                        }
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 8979,
              "end": 9149,
              "loc": {
                "start": {
                  "line": 252,
                  "column": 4
                },
                "end": {
                  "line": 255,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 8985,
                "end": 8999,
                "loc": {
                  "start": {
                    "line": 252,
                    "column": 10
                  },
                  "end": {
                    "line": 252,
                    "column": 24
                  }
                },
                "name": "dragSketchLine"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 8999,
                "end": 9149,
                "loc": {
                  "start": {
                    "line": 252,
                    "column": 24
                  },
                  "end": {
                    "line": 255,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 9000,
                    "end": 9003,
                    "loc": {
                      "start": {
                        "line": 252,
                        "column": 25
                      },
                      "end": {
                        "line": 252,
                        "column": 28
                      }
                    },
                    "name": "obj"
                  },
                  {
                    "type": "Identifier",
                    "start": 9005,
                    "end": 9013,
                    "loc": {
                      "start": {
                        "line": 252,
                        "column": 30
                      },
                      "end": {
                        "line": 252,
                        "column": 38
                      }
                    },
                    "name": "posArray"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 9015,
                  "end": 9149,
                  "loc": {
                    "start": {
                      "line": 252,
                      "column": 40
                    },
                    "end": {
                      "line": 255,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 9025,
                      "end": 9090,
                      "loc": {
                        "start": {
                          "line": 253,
                          "column": 8
                        },
                        "end": {
                          "line": 253,
                          "column": 73
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 9025,
                        "end": 9089,
                        "loc": {
                          "start": {
                            "line": 253,
                            "column": 8
                          },
                          "end": {
                            "line": 253,
                            "column": 72
                          }
                        },
                        "callee": {
                          "type": "Identifier",
                          "start": 9025,
                          "end": 9030,
                          "loc": {
                            "start": {
                              "line": 253,
                              "column": 8
                            },
                            "end": {
                              "line": 253,
                              "column": 13
                            }
                          },
                          "name": "check"
                        },
                        "arguments": [
                          {
                            "type": "BinaryExpression",
                            "start": 9031,
                            "end": 9056,
                            "loc": {
                              "start": {
                                "line": 253,
                                "column": 14
                              },
                              "end": {
                                "line": 253,
                                "column": 39
                              }
                            },
                            "left": {
                              "type": "Identifier",
                              "start": 9031,
                              "end": 9034,
                              "loc": {
                                "start": {
                                  "line": 253,
                                  "column": 14
                                },
                                "end": {
                                  "line": 253,
                                  "column": 17
                                }
                              },
                              "name": "obj"
                            },
                            "operator": "instanceof",
                            "right": {
                              "type": "Identifier",
                              "start": 9046,
                              "end": 9056,
                              "loc": {
                                "start": {
                                  "line": 253,
                                  "column": 29
                                },
                                "end": {
                                  "line": 253,
                                  "column": 39
                                }
                              },
                              "name": "SketchLine"
                            }
                          },
                          {
                            "type": "Literal",
                            "start": 9058,
                            "end": 9088,
                            "loc": {
                              "start": {
                                "line": 253,
                                "column": 41
                              },
                              "end": {
                                "line": 253,
                                "column": 71
                              }
                            },
                            "value": "Dragged object is not a line",
                            "rawValue": "Dragged object is not a line",
                            "raw": "\"Dragged object is not a line\""
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 9099,
                      "end": 9143,
                      "loc": {
                        "start": {
                          "line": 254,
                          "column": 8
                        },
                        "end": {
                          "line": 254,
                          "column": 52
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 9099,
                        "end": 9142,
                        "loc": {
                          "start": {
                            "line": 254,
                            "column": 8
                          },
                          "end": {
                            "line": 254,
                            "column": 51
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 9105,
                          "end": 9142,
                          "loc": {
                            "start": {
                              "line": 254,
                              "column": 14
                            },
                            "end": {
                              "line": 254,
                              "column": 51
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 9105,
                            "end": 9120,
                            "loc": {
                              "start": {
                                "line": 254,
                                "column": 14
                              },
                              "end": {
                                "line": 254,
                                "column": 29
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 9105,
                              "end": 9109,
                              "loc": {
                                "start": {
                                  "line": 254,
                                  "column": 14
                                },
                                "end": {
                                  "line": 254,
                                  "column": 18
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9110,
                              "end": 9120,
                              "loc": {
                                "start": {
                                  "line": 254,
                                  "column": 19
                                },
                                "end": {
                                  "line": 254,
                                  "column": 29
                                }
                              },
                              "name": "dragObject"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 9121,
                              "end": 9124,
                              "loc": {
                                "start": {
                                  "line": 254,
                                  "column": 30
                                },
                                "end": {
                                  "line": 254,
                                  "column": 33
                                }
                              },
                              "name": "obj"
                            },
                            {
                              "type": "Identifier",
                              "start": 9126,
                              "end": 9134,
                              "loc": {
                                "start": {
                                  "line": 254,
                                  "column": 35
                                },
                                "end": {
                                  "line": 254,
                                  "column": 43
                                }
                              },
                              "name": "posArray"
                            },
                            {
                              "type": "Literal",
                              "start": 9136,
                              "end": 9141,
                              "loc": {
                                "start": {
                                  "line": 254,
                                  "column": 45
                                },
                                "end": {
                                  "line": 254,
                                  "column": 50
                                }
                              },
                              "value": false,
                              "rawValue": false,
                              "raw": "false"
                            }
                          ]
                        }
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 9154,
              "end": 9321,
              "loc": {
                "start": {
                  "line": 256,
                  "column": 4
                },
                "end": {
                  "line": 259,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 9160,
                "end": 9173,
                "loc": {
                  "start": {
                    "line": 256,
                    "column": 10
                  },
                  "end": {
                    "line": 256,
                    "column": 23
                  }
                },
                "name": "dragSketchArc"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 9173,
                "end": 9321,
                "loc": {
                  "start": {
                    "line": 256,
                    "column": 23
                  },
                  "end": {
                    "line": 259,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 9174,
                    "end": 9177,
                    "loc": {
                      "start": {
                        "line": 256,
                        "column": 24
                      },
                      "end": {
                        "line": 256,
                        "column": 27
                      }
                    },
                    "name": "obj"
                  },
                  {
                    "type": "Identifier",
                    "start": 9179,
                    "end": 9187,
                    "loc": {
                      "start": {
                        "line": 256,
                        "column": 29
                      },
                      "end": {
                        "line": 256,
                        "column": 37
                      }
                    },
                    "name": "posArray"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 9189,
                  "end": 9321,
                  "loc": {
                    "start": {
                      "line": 256,
                      "column": 39
                    },
                    "end": {
                      "line": 259,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 9199,
                      "end": 9262,
                      "loc": {
                        "start": {
                          "line": 257,
                          "column": 8
                        },
                        "end": {
                          "line": 257,
                          "column": 71
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 9199,
                        "end": 9261,
                        "loc": {
                          "start": {
                            "line": 257,
                            "column": 8
                          },
                          "end": {
                            "line": 257,
                            "column": 70
                          }
                        },
                        "callee": {
                          "type": "Identifier",
                          "start": 9199,
                          "end": 9204,
                          "loc": {
                            "start": {
                              "line": 257,
                              "column": 8
                            },
                            "end": {
                              "line": 257,
                              "column": 13
                            }
                          },
                          "name": "check"
                        },
                        "arguments": [
                          {
                            "type": "BinaryExpression",
                            "start": 9205,
                            "end": 9229,
                            "loc": {
                              "start": {
                                "line": 257,
                                "column": 14
                              },
                              "end": {
                                "line": 257,
                                "column": 38
                              }
                            },
                            "left": {
                              "type": "Identifier",
                              "start": 9205,
                              "end": 9208,
                              "loc": {
                                "start": {
                                  "line": 257,
                                  "column": 14
                                },
                                "end": {
                                  "line": 257,
                                  "column": 17
                                }
                              },
                              "name": "obj"
                            },
                            "operator": "instanceof",
                            "right": {
                              "type": "Identifier",
                              "start": 9220,
                              "end": 9229,
                              "loc": {
                                "start": {
                                  "line": 257,
                                  "column": 29
                                },
                                "end": {
                                  "line": 257,
                                  "column": 38
                                }
                              },
                              "name": "SketchArc"
                            }
                          },
                          {
                            "type": "Literal",
                            "start": 9231,
                            "end": 9260,
                            "loc": {
                              "start": {
                                "line": 257,
                                "column": 40
                              },
                              "end": {
                                "line": 257,
                                "column": 69
                              }
                            },
                            "value": "Dragged object is not a arc",
                            "rawValue": "Dragged object is not a arc",
                            "raw": "\"Dragged object is not a arc\""
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 9271,
                      "end": 9315,
                      "loc": {
                        "start": {
                          "line": 258,
                          "column": 8
                        },
                        "end": {
                          "line": 258,
                          "column": 52
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 9271,
                        "end": 9314,
                        "loc": {
                          "start": {
                            "line": 258,
                            "column": 8
                          },
                          "end": {
                            "line": 258,
                            "column": 51
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 9277,
                          "end": 9314,
                          "loc": {
                            "start": {
                              "line": 258,
                              "column": 14
                            },
                            "end": {
                              "line": 258,
                              "column": 51
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 9277,
                            "end": 9292,
                            "loc": {
                              "start": {
                                "line": 258,
                                "column": 14
                              },
                              "end": {
                                "line": 258,
                                "column": 29
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 9277,
                              "end": 9281,
                              "loc": {
                                "start": {
                                  "line": 258,
                                  "column": 14
                                },
                                "end": {
                                  "line": 258,
                                  "column": 18
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9282,
                              "end": 9292,
                              "loc": {
                                "start": {
                                  "line": 258,
                                  "column": 19
                                },
                                "end": {
                                  "line": 258,
                                  "column": 29
                                }
                              },
                              "name": "dragObject"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 9293,
                              "end": 9296,
                              "loc": {
                                "start": {
                                  "line": 258,
                                  "column": 30
                                },
                                "end": {
                                  "line": 258,
                                  "column": 33
                                }
                              },
                              "name": "obj"
                            },
                            {
                              "type": "Identifier",
                              "start": 9298,
                              "end": 9306,
                              "loc": {
                                "start": {
                                  "line": 258,
                                  "column": 35
                                },
                                "end": {
                                  "line": 258,
                                  "column": 43
                                }
                              },
                              "name": "posArray"
                            },
                            {
                              "type": "Literal",
                              "start": 9308,
                              "end": 9313,
                              "loc": {
                                "start": {
                                  "line": 258,
                                  "column": 45
                                },
                                "end": {
                                  "line": 258,
                                  "column": 50
                                }
                              },
                              "value": false,
                              "rawValue": false,
                              "raw": "false"
                            }
                          ]
                        }
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 9326,
              "end": 9612,
              "loc": {
                "start": {
                  "line": 260,
                  "column": 4
                },
                "end": {
                  "line": 267,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 9332,
                "end": 9343,
                "loc": {
                  "start": {
                    "line": 260,
                    "column": 10
                  },
                  "end": {
                    "line": 260,
                    "column": 21
                  }
                },
                "name": "hoverObject"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 9343,
                "end": 9612,
                "loc": {
                  "start": {
                    "line": 260,
                    "column": 21
                  },
                  "end": {
                    "line": 267,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 9344,
                    "end": 9347,
                    "loc": {
                      "start": {
                        "line": 260,
                        "column": 22
                      },
                      "end": {
                        "line": 260,
                        "column": 25
                      }
                    },
                    "name": "obj"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 9349,
                  "end": 9612,
                  "loc": {
                    "start": {
                      "line": 260,
                      "column": 27
                    },
                    "end": {
                      "line": 267,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 9359,
                      "end": 9404,
                      "loc": {
                        "start": {
                          "line": 261,
                          "column": 8
                        },
                        "end": {
                          "line": 262,
                          "column": 19
                        }
                      },
                      "test": {
                        "type": "MemberExpression",
                        "start": 9363,
                        "end": 9383,
                        "loc": {
                          "start": {
                            "line": 261,
                            "column": 12
                          },
                          "end": {
                            "line": 261,
                            "column": 32
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 9363,
                          "end": 9366,
                          "loc": {
                            "start": {
                              "line": 261,
                              "column": 12
                            },
                            "end": {
                              "line": 261,
                              "column": 15
                            }
                          },
                          "name": "obj"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 9367,
                          "end": 9383,
                          "loc": {
                            "start": {
                              "line": 261,
                              "column": 16
                            },
                            "end": {
                              "line": 261,
                              "column": 32
                            }
                          },
                          "name": "_testing_hovered"
                        },
                        "computed": false
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 9397,
                        "end": 9404,
                        "loc": {
                          "start": {
                            "line": 262,
                            "column": 12
                          },
                          "end": {
                            "line": 262,
                            "column": 19
                          }
                        },
                        "argument": null
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 9413,
                      "end": 9459,
                      "loc": {
                        "start": {
                          "line": 263,
                          "column": 8
                        },
                        "end": {
                          "line": 263,
                          "column": 54
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 9413,
                        "end": 9458,
                        "loc": {
                          "start": {
                            "line": 263,
                            "column": 8
                          },
                          "end": {
                            "line": 263,
                            "column": 53
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 9419,
                          "end": 9458,
                          "loc": {
                            "start": {
                              "line": 263,
                              "column": 14
                            },
                            "end": {
                              "line": 263,
                              "column": 53
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 9419,
                            "end": 9436,
                            "loc": {
                              "start": {
                                "line": 263,
                                "column": 14
                              },
                              "end": {
                                "line": 263,
                                "column": 31
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 9419,
                              "end": 9423,
                              "loc": {
                                "start": {
                                  "line": 263,
                                  "column": 14
                                },
                                "end": {
                                  "line": 263,
                                  "column": 18
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9424,
                              "end": 9436,
                              "loc": {
                                "start": {
                                  "line": 263,
                                  "column": 19
                                },
                                "end": {
                                  "line": 263,
                                  "column": 31
                                }
                              },
                              "name": "_mouseMoveTo"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "CallExpression",
                              "start": 9437,
                              "end": 9457,
                              "loc": {
                                "start": {
                                  "line": 263,
                                  "column": 32
                                },
                                "end": {
                                  "line": 263,
                                  "column": 52
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 9437,
                                "end": 9452,
                                "loc": {
                                  "start": {
                                    "line": 263,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 263,
                                    "column": 47
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 9437,
                                  "end": 9441,
                                  "loc": {
                                    "start": {
                                      "line": 263,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 263,
                                      "column": 36
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 9442,
                                  "end": 9452,
                                  "loc": {
                                    "start": {
                                      "line": 263,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 263,
                                      "column": 47
                                    }
                                  },
                                  "name": "getPointOn"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 9453,
                                  "end": 9456,
                                  "loc": {
                                    "start": {
                                      "line": 263,
                                      "column": 48
                                    },
                                    "end": {
                                      "line": 263,
                                      "column": 51
                                    }
                                  },
                                  "name": "obj"
                                }
                              ]
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 9468,
                      "end": 9542,
                      "loc": {
                        "start": {
                          "line": 264,
                          "column": 8
                        },
                        "end": {
                          "line": 264,
                          "column": 82
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 9468,
                        "end": 9541,
                        "loc": {
                          "start": {
                            "line": 264,
                            "column": 8
                          },
                          "end": {
                            "line": 264,
                            "column": 81
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 9474,
                          "end": 9541,
                          "loc": {
                            "start": {
                              "line": 264,
                              "column": 14
                            },
                            "end": {
                              "line": 264,
                              "column": 81
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 9474,
                            "end": 9495,
                            "loc": {
                              "start": {
                                "line": 264,
                                "column": 14
                              },
                              "end": {
                                "line": 264,
                                "column": 35
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 9474,
                              "end": 9478,
                              "loc": {
                                "start": {
                                  "line": 264,
                                  "column": 14
                                },
                                "end": {
                                  "line": 264,
                                  "column": 18
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9479,
                              "end": 9495,
                              "loc": {
                                "start": {
                                  "line": 264,
                                  "column": 19
                                },
                                "end": {
                                  "line": 264,
                                  "column": 35
                                }
                              },
                              "name": "_interactionEmit"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 9496,
                              "end": 9499,
                              "loc": {
                                "start": {
                                  "line": 264,
                                  "column": 36
                                },
                                "end": {
                                  "line": 264,
                                  "column": 39
                                }
                              },
                              "name": "obj"
                            },
                            {
                              "type": "MemberExpression",
                              "start": 9501,
                              "end": 9536,
                              "loc": {
                                "start": {
                                  "line": 264,
                                  "column": 41
                                },
                                "end": {
                                  "line": 264,
                                  "column": 76
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 9501,
                                "end": 9528,
                                "loc": {
                                  "start": {
                                    "line": 264,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 264,
                                    "column": 68
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 9501,
                                  "end": 9516,
                                  "loc": {
                                    "start": {
                                      "line": 264,
                                      "column": 41
                                    },
                                    "end": {
                                      "line": 264,
                                      "column": 56
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 9501,
                                    "end": 9509,
                                    "loc": {
                                      "start": {
                                        "line": 264,
                                        "column": 41
                                      },
                                      "end": {
                                        "line": 264,
                                        "column": 49
                                      }
                                    },
                                    "name": "Object3D"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 9510,
                                    "end": 9516,
                                    "loc": {
                                      "start": {
                                        "line": 264,
                                        "column": 50
                                      },
                                      "end": {
                                        "line": 264,
                                        "column": 56
                                      }
                                    },
                                    "name": "Events"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 9517,
                                  "end": 9528,
                                  "loc": {
                                    "start": {
                                      "line": 264,
                                      "column": 57
                                    },
                                    "end": {
                                      "line": 264,
                                      "column": 68
                                    }
                                  },
                                  "name": "Interaction"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 9529,
                                "end": 9536,
                                "loc": {
                                  "start": {
                                    "line": 264,
                                    "column": 69
                                  },
                                  "end": {
                                    "line": 264,
                                    "column": 76
                                  }
                                },
                                "name": "Hovered"
                              },
                              "computed": false
                            },
                            {
                              "type": "ObjectExpression",
                              "start": 9538,
                              "end": 9540,
                              "loc": {
                                "start": {
                                  "line": 264,
                                  "column": 78
                                },
                                "end": {
                                  "line": 264,
                                  "column": 80
                                }
                              },
                              "properties": []
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 9551,
                      "end": 9579,
                      "loc": {
                        "start": {
                          "line": 265,
                          "column": 8
                        },
                        "end": {
                          "line": 265,
                          "column": 36
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 9551,
                        "end": 9578,
                        "loc": {
                          "start": {
                            "line": 265,
                            "column": 8
                          },
                          "end": {
                            "line": 265,
                            "column": 35
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 9551,
                          "end": 9571,
                          "loc": {
                            "start": {
                              "line": 265,
                              "column": 8
                            },
                            "end": {
                              "line": 265,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 9551,
                            "end": 9554,
                            "loc": {
                              "start": {
                                "line": 265,
                                "column": 8
                              },
                              "end": {
                                "line": 265,
                                "column": 11
                              }
                            },
                            "name": "obj"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 9555,
                            "end": 9571,
                            "loc": {
                              "start": {
                                "line": 265,
                                "column": 12
                              },
                              "end": {
                                "line": 265,
                                "column": 28
                              }
                            },
                            "name": "_testing_hovered"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Literal",
                          "start": 9574,
                          "end": 9578,
                          "loc": {
                            "start": {
                              "line": 265,
                              "column": 31
                            },
                            "end": {
                              "line": 265,
                              "column": 35
                            }
                          },
                          "value": true,
                          "rawValue": true,
                          "raw": "true"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 9588,
                      "end": 9606,
                      "loc": {
                        "start": {
                          "line": 266,
                          "column": 8
                        },
                        "end": {
                          "line": 266,
                          "column": 26
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 9588,
                        "end": 9605,
                        "loc": {
                          "start": {
                            "line": 266,
                            "column": 8
                          },
                          "end": {
                            "line": 266,
                            "column": 25
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 9594,
                          "end": 9605,
                          "loc": {
                            "start": {
                              "line": 266,
                              "column": 14
                            },
                            "end": {
                              "line": 266,
                              "column": 25
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 9594,
                            "end": 9603,
                            "loc": {
                              "start": {
                                "line": 266,
                                "column": 14
                              },
                              "end": {
                                "line": 266,
                                "column": 23
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 9594,
                              "end": 9598,
                              "loc": {
                                "start": {
                                  "line": 266,
                                  "column": 14
                                },
                                "end": {
                                  "line": 266,
                                  "column": 18
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9599,
                              "end": 9603,
                              "loc": {
                                "start": {
                                  "line": 266,
                                  "column": 19
                                },
                                "end": {
                                  "line": 266,
                                  "column": 23
                                }
                              },
                              "name": "tick"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 9617,
              "end": 9902,
              "loc": {
                "start": {
                  "line": 268,
                  "column": 4
                },
                "end": {
                  "line": 275,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 9623,
                "end": 9636,
                "loc": {
                  "start": {
                    "line": 268,
                    "column": 10
                  },
                  "end": {
                    "line": 268,
                    "column": 23
                  }
                },
                "name": "unhoverObject"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 9636,
                "end": 9902,
                "loc": {
                  "start": {
                    "line": 268,
                    "column": 23
                  },
                  "end": {
                    "line": 275,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 9637,
                    "end": 9640,
                    "loc": {
                      "start": {
                        "line": 268,
                        "column": 24
                      },
                      "end": {
                        "line": 268,
                        "column": 27
                      }
                    },
                    "name": "obj"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 9642,
                  "end": 9902,
                  "loc": {
                    "start": {
                      "line": 268,
                      "column": 29
                    },
                    "end": {
                      "line": 275,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "IfStatement",
                      "start": 9652,
                      "end": 9698,
                      "loc": {
                        "start": {
                          "line": 269,
                          "column": 8
                        },
                        "end": {
                          "line": 270,
                          "column": 19
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 9656,
                        "end": 9677,
                        "loc": {
                          "start": {
                            "line": 269,
                            "column": 12
                          },
                          "end": {
                            "line": 269,
                            "column": 33
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "MemberExpression",
                          "start": 9657,
                          "end": 9677,
                          "loc": {
                            "start": {
                              "line": 269,
                              "column": 13
                            },
                            "end": {
                              "line": 269,
                              "column": 33
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 9657,
                            "end": 9660,
                            "loc": {
                              "start": {
                                "line": 269,
                                "column": 13
                              },
                              "end": {
                                "line": 269,
                                "column": 16
                              }
                            },
                            "name": "obj"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 9661,
                            "end": 9677,
                            "loc": {
                              "start": {
                                "line": 269,
                                "column": 17
                              },
                              "end": {
                                "line": 269,
                                "column": 33
                              }
                            },
                            "name": "_testing_hovered"
                          },
                          "computed": false
                        }
                      },
                      "consequent": {
                        "type": "ReturnStatement",
                        "start": 9691,
                        "end": 9698,
                        "loc": {
                          "start": {
                            "line": 270,
                            "column": 12
                          },
                          "end": {
                            "line": 270,
                            "column": 19
                          }
                        },
                        "argument": null
                      },
                      "alternate": null
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 9707,
                      "end": 9747,
                      "loc": {
                        "start": {
                          "line": 271,
                          "column": 8
                        },
                        "end": {
                          "line": 271,
                          "column": 48
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 9707,
                        "end": 9746,
                        "loc": {
                          "start": {
                            "line": 271,
                            "column": 8
                          },
                          "end": {
                            "line": 271,
                            "column": 47
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 9713,
                          "end": 9746,
                          "loc": {
                            "start": {
                              "line": 271,
                              "column": 14
                            },
                            "end": {
                              "line": 271,
                              "column": 47
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 9713,
                            "end": 9730,
                            "loc": {
                              "start": {
                                "line": 271,
                                "column": 14
                              },
                              "end": {
                                "line": 271,
                                "column": 31
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 9713,
                              "end": 9717,
                              "loc": {
                                "start": {
                                  "line": 271,
                                  "column": 14
                                },
                                "end": {
                                  "line": 271,
                                  "column": 18
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9718,
                              "end": 9730,
                              "loc": {
                                "start": {
                                  "line": 271,
                                  "column": 19
                                },
                                "end": {
                                  "line": 271,
                                  "column": 31
                                }
                              },
                              "name": "_mouseMoveTo"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "MemberExpression",
                              "start": 9731,
                              "end": 9745,
                              "loc": {
                                "start": {
                                  "line": 271,
                                  "column": 32
                                },
                                "end": {
                                  "line": 271,
                                  "column": 46
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 9731,
                                "end": 9735,
                                "loc": {
                                  "start": {
                                    "line": 271,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 271,
                                    "column": 36
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 9736,
                                "end": 9745,
                                "loc": {
                                  "start": {
                                    "line": 271,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 271,
                                    "column": 46
                                  }
                                },
                                "name": "safePoint"
                              },
                              "computed": false
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 9756,
                      "end": 9832,
                      "loc": {
                        "start": {
                          "line": 272,
                          "column": 8
                        },
                        "end": {
                          "line": 272,
                          "column": 84
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 9756,
                        "end": 9831,
                        "loc": {
                          "start": {
                            "line": 272,
                            "column": 8
                          },
                          "end": {
                            "line": 272,
                            "column": 83
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 9762,
                          "end": 9831,
                          "loc": {
                            "start": {
                              "line": 272,
                              "column": 14
                            },
                            "end": {
                              "line": 272,
                              "column": 83
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 9762,
                            "end": 9783,
                            "loc": {
                              "start": {
                                "line": 272,
                                "column": 14
                              },
                              "end": {
                                "line": 272,
                                "column": 35
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 9762,
                              "end": 9766,
                              "loc": {
                                "start": {
                                  "line": 272,
                                  "column": 14
                                },
                                "end": {
                                  "line": 272,
                                  "column": 18
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9767,
                              "end": 9783,
                              "loc": {
                                "start": {
                                  "line": 272,
                                  "column": 19
                                },
                                "end": {
                                  "line": 272,
                                  "column": 35
                                }
                              },
                              "name": "_interactionEmit"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 9784,
                              "end": 9787,
                              "loc": {
                                "start": {
                                  "line": 272,
                                  "column": 36
                                },
                                "end": {
                                  "line": 272,
                                  "column": 39
                                }
                              },
                              "name": "obj"
                            },
                            {
                              "type": "MemberExpression",
                              "start": 9789,
                              "end": 9826,
                              "loc": {
                                "start": {
                                  "line": 272,
                                  "column": 41
                                },
                                "end": {
                                  "line": 272,
                                  "column": 78
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 9789,
                                "end": 9816,
                                "loc": {
                                  "start": {
                                    "line": 272,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 272,
                                    "column": 68
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 9789,
                                  "end": 9804,
                                  "loc": {
                                    "start": {
                                      "line": 272,
                                      "column": 41
                                    },
                                    "end": {
                                      "line": 272,
                                      "column": 56
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 9789,
                                    "end": 9797,
                                    "loc": {
                                      "start": {
                                        "line": 272,
                                        "column": 41
                                      },
                                      "end": {
                                        "line": 272,
                                        "column": 49
                                      }
                                    },
                                    "name": "Object3D"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 9798,
                                    "end": 9804,
                                    "loc": {
                                      "start": {
                                        "line": 272,
                                        "column": 50
                                      },
                                      "end": {
                                        "line": 272,
                                        "column": 56
                                      }
                                    },
                                    "name": "Events"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 9805,
                                  "end": 9816,
                                  "loc": {
                                    "start": {
                                      "line": 272,
                                      "column": 57
                                    },
                                    "end": {
                                      "line": 272,
                                      "column": 68
                                    }
                                  },
                                  "name": "Interaction"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 9817,
                                "end": 9826,
                                "loc": {
                                  "start": {
                                    "line": 272,
                                    "column": 69
                                  },
                                  "end": {
                                    "line": 272,
                                    "column": 78
                                  }
                                },
                                "name": "Unhovered"
                              },
                              "computed": false
                            },
                            {
                              "type": "ObjectExpression",
                              "start": 9828,
                              "end": 9830,
                              "loc": {
                                "start": {
                                  "line": 272,
                                  "column": 80
                                },
                                "end": {
                                  "line": 272,
                                  "column": 82
                                }
                              },
                              "properties": []
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 9841,
                      "end": 9869,
                      "loc": {
                        "start": {
                          "line": 273,
                          "column": 8
                        },
                        "end": {
                          "line": 273,
                          "column": 36
                        }
                      },
                      "expression": {
                        "type": "UnaryExpression",
                        "start": 9841,
                        "end": 9868,
                        "loc": {
                          "start": {
                            "line": 273,
                            "column": 8
                          },
                          "end": {
                            "line": 273,
                            "column": 35
                          }
                        },
                        "operator": "delete",
                        "prefix": true,
                        "argument": {
                          "type": "MemberExpression",
                          "start": 9848,
                          "end": 9868,
                          "loc": {
                            "start": {
                              "line": 273,
                              "column": 15
                            },
                            "end": {
                              "line": 273,
                              "column": 35
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 9848,
                            "end": 9851,
                            "loc": {
                              "start": {
                                "line": 273,
                                "column": 15
                              },
                              "end": {
                                "line": 273,
                                "column": 18
                              }
                            },
                            "name": "obj"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 9852,
                            "end": 9868,
                            "loc": {
                              "start": {
                                "line": 273,
                                "column": 19
                              },
                              "end": {
                                "line": 273,
                                "column": 35
                              }
                            },
                            "name": "_testing_hovered"
                          },
                          "computed": false
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 9878,
                      "end": 9896,
                      "loc": {
                        "start": {
                          "line": 274,
                          "column": 8
                        },
                        "end": {
                          "line": 274,
                          "column": 26
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 9878,
                        "end": 9895,
                        "loc": {
                          "start": {
                            "line": 274,
                            "column": 8
                          },
                          "end": {
                            "line": 274,
                            "column": 25
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 9884,
                          "end": 9895,
                          "loc": {
                            "start": {
                              "line": 274,
                              "column": 14
                            },
                            "end": {
                              "line": 274,
                              "column": 25
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 9884,
                            "end": 9893,
                            "loc": {
                              "start": {
                                "line": 274,
                                "column": 14
                              },
                              "end": {
                                "line": 274,
                                "column": 23
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 9884,
                              "end": 9888,
                              "loc": {
                                "start": {
                                  "line": 274,
                                  "column": 14
                                },
                                "end": {
                                  "line": 274,
                                  "column": 18
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9889,
                              "end": 9893,
                              "loc": {
                                "start": {
                                  "line": 274,
                                  "column": 19
                                },
                                "end": {
                                  "line": 274,
                                  "column": 23
                                }
                              },
                              "name": "tick"
                            },
                            "computed": false
                          },
                          "arguments": []
                        }
                      }
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": "drawing objects",
                  "start": 9908,
                  "end": 9925,
                  "loc": {
                    "start": {
                      "line": 277,
                      "column": 4
                    },
                    "end": {
                      "line": 277,
                      "column": 21
                    }
                  },
                  "range": [
                    9908,
                    9925
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 9930,
              "end": 10338,
              "loc": {
                "start": {
                  "line": 278,
                  "column": 4
                },
                "end": {
                  "line": 288,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 9936,
                "end": 9947,
                "loc": {
                  "start": {
                    "line": 278,
                    "column": 10
                  },
                  "end": {
                    "line": 278,
                    "column": 21
                  }
                },
                "name": "_drawSimple"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 9947,
                "end": 10338,
                "loc": {
                  "start": {
                    "line": 278,
                    "column": 21
                  },
                  "end": {
                    "line": 288,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 9948,
                    "end": 9952,
                    "loc": {
                      "start": {
                        "line": 278,
                        "column": 22
                      },
                      "end": {
                        "line": 278,
                        "column": 26
                      }
                    },
                    "name": "tool"
                  },
                  {
                    "type": "Identifier",
                    "start": 9954,
                    "end": 9958,
                    "loc": {
                      "start": {
                        "line": 278,
                        "column": 28
                      },
                      "end": {
                        "line": 278,
                        "column": 32
                      }
                    },
                    "name": "type"
                  },
                  {
                    "type": "Identifier",
                    "start": 9960,
                    "end": 9969,
                    "loc": {
                      "start": {
                        "line": 278,
                        "column": 34
                      },
                      "end": {
                        "line": 278,
                        "column": 43
                      }
                    },
                    "name": "positions"
                  },
                  {
                    "type": "Identifier",
                    "start": 9971,
                    "end": 9983,
                    "loc": {
                      "start": {
                        "line": 278,
                        "column": 45
                      },
                      "end": {
                        "line": 278,
                        "column": 57
                      }
                    },
                    "name": "leaveHandler"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 9985,
                  "end": 10338,
                  "loc": {
                    "start": {
                      "line": 278,
                      "column": 59
                    },
                    "end": {
                      "line": 288,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 9995,
                      "end": 10023,
                      "loc": {
                        "start": {
                          "line": 279,
                          "column": 8
                        },
                        "end": {
                          "line": 279,
                          "column": 36
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 9995,
                        "end": 10022,
                        "loc": {
                          "start": {
                            "line": 279,
                            "column": 8
                          },
                          "end": {
                            "line": 279,
                            "column": 35
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 10001,
                          "end": 10022,
                          "loc": {
                            "start": {
                              "line": 279,
                              "column": 14
                            },
                            "end": {
                              "line": 279,
                              "column": 35
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 10001,
                            "end": 10016,
                            "loc": {
                              "start": {
                                "line": 279,
                                "column": 14
                              },
                              "end": {
                                "line": 279,
                                "column": 29
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 10001,
                              "end": 10005,
                              "loc": {
                                "start": {
                                  "line": 279,
                                  "column": 14
                                },
                                "end": {
                                  "line": 279,
                                  "column": 18
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 10006,
                              "end": 10016,
                              "loc": {
                                "start": {
                                  "line": 279,
                                  "column": 19
                                },
                                "end": {
                                  "line": 279,
                                  "column": 29
                                }
                              },
                              "name": "chooseTool"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 10017,
                              "end": 10021,
                              "loc": {
                                "start": {
                                  "line": 279,
                                  "column": 30
                                },
                                "end": {
                                  "line": 279,
                                  "column": 34
                                }
                              },
                              "name": "tool"
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 10032,
                      "end": 10201,
                      "loc": {
                        "start": {
                          "line": 280,
                          "column": 8
                        },
                        "end": {
                          "line": 283,
                          "column": 11
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 10036,
                          "end": 10200,
                          "loc": {
                            "start": {
                              "line": 280,
                              "column": 12
                            },
                            "end": {
                              "line": 283,
                              "column": 10
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 10036,
                            "end": 10041,
                            "loc": {
                              "start": {
                                "line": 280,
                                "column": 12
                              },
                              "end": {
                                "line": 280,
                                "column": 17
                              }
                            },
                            "name": "added"
                          },
                          "init": {
                            "type": "AwaitExpression",
                            "start": 10044,
                            "end": 10200,
                            "loc": {
                              "start": {
                                "line": 280,
                                "column": 20
                              },
                              "end": {
                                "line": 283,
                                "column": 10
                              }
                            },
                            "all": false,
                            "argument": {
                              "type": "CallExpression",
                              "start": 10050,
                              "end": 10200,
                              "loc": {
                                "start": {
                                  "line": 280,
                                  "column": 26
                                },
                                "end": {
                                  "line": 283,
                                  "column": 10
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 10050,
                                "end": 10065,
                                "loc": {
                                  "start": {
                                    "line": 280,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 280,
                                    "column": 41
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 10050,
                                  "end": 10054,
                                  "loc": {
                                    "start": {
                                      "line": 280,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 280,
                                      "column": 30
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 10055,
                                  "end": 10065,
                                  "loc": {
                                    "start": {
                                      "line": 280,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 280,
                                      "column": 41
                                    }
                                  },
                                  "name": "trackAdded"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ArrowFunctionExpression",
                                  "start": 10066,
                                  "end": 10199,
                                  "loc": {
                                    "start": {
                                      "line": 280,
                                      "column": 42
                                    },
                                    "end": {
                                      "line": 283,
                                      "column": 9
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": false,
                                  "async": true,
                                  "params": [],
                                  "body": {
                                    "type": "BlockStatement",
                                    "start": 10078,
                                    "end": 10199,
                                    "loc": {
                                      "start": {
                                        "line": 280,
                                        "column": 54
                                      },
                                      "end": {
                                        "line": 283,
                                        "column": 9
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "ForStatement",
                                        "start": 10092,
                                        "end": 10189,
                                        "loc": {
                                          "start": {
                                            "line": 281,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 282,
                                            "column": 54
                                          }
                                        },
                                        "init": {
                                          "type": "VariableDeclaration",
                                          "start": 10097,
                                          "end": 10106,
                                          "loc": {
                                            "start": {
                                              "line": 281,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 281,
                                              "column": 26
                                            }
                                          },
                                          "declarations": [
                                            {
                                              "type": "VariableDeclarator",
                                              "start": 10101,
                                              "end": 10106,
                                              "loc": {
                                                "start": {
                                                  "line": 281,
                                                  "column": 21
                                                },
                                                "end": {
                                                  "line": 281,
                                                  "column": 26
                                                }
                                              },
                                              "id": {
                                                "type": "Identifier",
                                                "start": 10101,
                                                "end": 10102,
                                                "loc": {
                                                  "start": {
                                                    "line": 281,
                                                    "column": 21
                                                  },
                                                  "end": {
                                                    "line": 281,
                                                    "column": 22
                                                  }
                                                },
                                                "name": "i"
                                              },
                                              "init": {
                                                "type": "Literal",
                                                "start": 10105,
                                                "end": 10106,
                                                "loc": {
                                                  "start": {
                                                    "line": 281,
                                                    "column": 25
                                                  },
                                                  "end": {
                                                    "line": 281,
                                                    "column": 26
                                                  }
                                                },
                                                "value": 0,
                                                "rawValue": 0,
                                                "raw": "0"
                                              }
                                            }
                                          ],
                                          "kind": "let"
                                        },
                                        "test": {
                                          "type": "BinaryExpression",
                                          "start": 10108,
                                          "end": 10128,
                                          "loc": {
                                            "start": {
                                              "line": 281,
                                              "column": 28
                                            },
                                            "end": {
                                              "line": 281,
                                              "column": 48
                                            }
                                          },
                                          "left": {
                                            "type": "Identifier",
                                            "start": 10108,
                                            "end": 10109,
                                            "loc": {
                                              "start": {
                                                "line": 281,
                                                "column": 28
                                              },
                                              "end": {
                                                "line": 281,
                                                "column": 29
                                              }
                                            },
                                            "name": "i"
                                          },
                                          "operator": "<",
                                          "right": {
                                            "type": "MemberExpression",
                                            "start": 10112,
                                            "end": 10128,
                                            "loc": {
                                              "start": {
                                                "line": 281,
                                                "column": 32
                                              },
                                              "end": {
                                                "line": 281,
                                                "column": 48
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 10112,
                                              "end": 10121,
                                              "loc": {
                                                "start": {
                                                  "line": 281,
                                                  "column": 32
                                                },
                                                "end": {
                                                  "line": 281,
                                                  "column": 41
                                                }
                                              },
                                              "name": "positions"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 10122,
                                              "end": 10128,
                                              "loc": {
                                                "start": {
                                                  "line": 281,
                                                  "column": 42
                                                },
                                                "end": {
                                                  "line": 281,
                                                  "column": 48
                                                }
                                              },
                                              "name": "length"
                                            },
                                            "computed": false
                                          }
                                        },
                                        "update": {
                                          "type": "UpdateExpression",
                                          "start": 10130,
                                          "end": 10133,
                                          "loc": {
                                            "start": {
                                              "line": 281,
                                              "column": 50
                                            },
                                            "end": {
                                              "line": 281,
                                              "column": 53
                                            }
                                          },
                                          "operator": "++",
                                          "prefix": false,
                                          "argument": {
                                            "type": "Identifier",
                                            "start": 10130,
                                            "end": 10131,
                                            "loc": {
                                              "start": {
                                                "line": 281,
                                                "column": 50
                                              },
                                              "end": {
                                                "line": 281,
                                                "column": 51
                                              }
                                            },
                                            "name": "i"
                                          }
                                        },
                                        "body": {
                                          "type": "ExpressionStatement",
                                          "start": 10151,
                                          "end": 10189,
                                          "loc": {
                                            "start": {
                                              "line": 282,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 282,
                                              "column": 54
                                            }
                                          },
                                          "expression": {
                                            "type": "AwaitExpression",
                                            "start": 10151,
                                            "end": 10188,
                                            "loc": {
                                              "start": {
                                                "line": 282,
                                                "column": 16
                                              },
                                              "end": {
                                                "line": 282,
                                                "column": 53
                                              }
                                            },
                                            "all": false,
                                            "argument": {
                                              "type": "CallExpression",
                                              "start": 10157,
                                              "end": 10188,
                                              "loc": {
                                                "start": {
                                                  "line": 282,
                                                  "column": 22
                                                },
                                                "end": {
                                                  "line": 282,
                                                  "column": 53
                                                }
                                              },
                                              "callee": {
                                                "type": "MemberExpression",
                                                "start": 10157,
                                                "end": 10174,
                                                "loc": {
                                                  "start": {
                                                    "line": 282,
                                                    "column": 22
                                                  },
                                                  "end": {
                                                    "line": 282,
                                                    "column": 39
                                                  }
                                                },
                                                "object": {
                                                  "type": "ThisExpression",
                                                  "start": 10157,
                                                  "end": 10161,
                                                  "loc": {
                                                    "start": {
                                                      "line": 282,
                                                      "column": 22
                                                    },
                                                    "end": {
                                                      "line": 282,
                                                      "column": 26
                                                    }
                                                  }
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 10162,
                                                  "end": 10174,
                                                  "loc": {
                                                    "start": {
                                                      "line": 282,
                                                      "column": 27
                                                    },
                                                    "end": {
                                                      "line": 282,
                                                      "column": 39
                                                    }
                                                  },
                                                  "name": "mouseClickAt"
                                                },
                                                "computed": false
                                              },
                                              "arguments": [
                                                {
                                                  "type": "MemberExpression",
                                                  "start": 10175,
                                                  "end": 10187,
                                                  "loc": {
                                                    "start": {
                                                      "line": 282,
                                                      "column": 40
                                                    },
                                                    "end": {
                                                      "line": 282,
                                                      "column": 52
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 10175,
                                                    "end": 10184,
                                                    "loc": {
                                                      "start": {
                                                        "line": 282,
                                                        "column": 40
                                                      },
                                                      "end": {
                                                        "line": 282,
                                                        "column": 49
                                                      }
                                                    },
                                                    "name": "positions"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 10185,
                                                    "end": 10186,
                                                    "loc": {
                                                      "start": {
                                                        "line": 282,
                                                        "column": 50
                                                      },
                                                      "end": {
                                                        "line": 282,
                                                        "column": 51
                                                      }
                                                    },
                                                    "name": "i"
                                                  },
                                                  "computed": true
                                                }
                                              ]
                                            }
                                          }
                                        }
                                      }
                                    ]
                                  }
                                }
                              ]
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 10210,
                      "end": 10248,
                      "loc": {
                        "start": {
                          "line": 284,
                          "column": 8
                        },
                        "end": {
                          "line": 284,
                          "column": 46
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 10214,
                          "end": 10247,
                          "loc": {
                            "start": {
                              "line": 284,
                              "column": 12
                            },
                            "end": {
                              "line": 284,
                              "column": 45
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 10214,
                            "end": 10217,
                            "loc": {
                              "start": {
                                "line": 284,
                                "column": 12
                              },
                              "end": {
                                "line": 284,
                                "column": 15
                              }
                            },
                            "name": "obj"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 10220,
                            "end": 10247,
                            "loc": {
                              "start": {
                                "line": 284,
                                "column": 18
                              },
                              "end": {
                                "line": 284,
                                "column": 45
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 10220,
                              "end": 10245,
                              "loc": {
                                "start": {
                                  "line": 284,
                                  "column": 18
                                },
                                "end": {
                                  "line": 284,
                                  "column": 43
                                }
                              },
                              "object": {
                                "type": "CallExpression",
                                "start": 10220,
                                "end": 10238,
                                "loc": {
                                  "start": {
                                    "line": 284,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 284,
                                    "column": 36
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 10220,
                                  "end": 10232,
                                  "loc": {
                                    "start": {
                                      "line": 284,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 284,
                                      "column": 30
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 10220,
                                    "end": 10225,
                                    "loc": {
                                      "start": {
                                        "line": 284,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 284,
                                        "column": 23
                                      }
                                    },
                                    "name": "added"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 10226,
                                    "end": 10232,
                                    "loc": {
                                      "start": {
                                        "line": 284,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 284,
                                        "column": 30
                                      }
                                    },
                                    "name": "ofType"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 10233,
                                    "end": 10237,
                                    "loc": {
                                      "start": {
                                        "line": 284,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 284,
                                        "column": 35
                                      }
                                    },
                                    "name": "type"
                                  }
                                ]
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 10239,
                                "end": 10245,
                                "loc": {
                                  "start": {
                                    "line": 284,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 284,
                                    "column": 43
                                  }
                                },
                                "name": "single"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "IfStatement",
                      "start": 10257,
                      "end": 10312,
                      "loc": {
                        "start": {
                          "line": 285,
                          "column": 8
                        },
                        "end": {
                          "line": 286,
                          "column": 36
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 10261,
                        "end": 10274,
                        "loc": {
                          "start": {
                            "line": 285,
                            "column": 12
                          },
                          "end": {
                            "line": 285,
                            "column": 25
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "Identifier",
                          "start": 10262,
                          "end": 10274,
                          "loc": {
                            "start": {
                              "line": 285,
                              "column": 13
                            },
                            "end": {
                              "line": 285,
                              "column": 25
                            }
                          },
                          "name": "leaveHandler"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 10288,
                        "end": 10312,
                        "loc": {
                          "start": {
                            "line": 286,
                            "column": 12
                          },
                          "end": {
                            "line": 286,
                            "column": 36
                          }
                        },
                        "expression": {
                          "type": "AwaitExpression",
                          "start": 10288,
                          "end": 10311,
                          "loc": {
                            "start": {
                              "line": 286,
                              "column": 12
                            },
                            "end": {
                              "line": 286,
                              "column": 35
                            }
                          },
                          "all": false,
                          "argument": {
                            "type": "CallExpression",
                            "start": 10294,
                            "end": 10311,
                            "loc": {
                              "start": {
                                "line": 286,
                                "column": 18
                              },
                              "end": {
                                "line": 286,
                                "column": 35
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 10294,
                              "end": 10309,
                              "loc": {
                                "start": {
                                  "line": 286,
                                  "column": 18
                                },
                                "end": {
                                  "line": 286,
                                  "column": 33
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 10294,
                                "end": 10298,
                                "loc": {
                                  "start": {
                                    "line": 286,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 286,
                                    "column": 22
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 10299,
                                "end": 10309,
                                "loc": {
                                  "start": {
                                    "line": 286,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 286,
                                    "column": 33
                                  }
                                },
                                "name": "chooseTool"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 10321,
                      "end": 10332,
                      "loc": {
                        "start": {
                          "line": 287,
                          "column": 8
                        },
                        "end": {
                          "line": 287,
                          "column": 19
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 10328,
                        "end": 10331,
                        "loc": {
                          "start": {
                            "line": 287,
                            "column": 15
                          },
                          "end": {
                            "line": 287,
                            "column": 18
                          }
                        },
                        "name": "obj"
                      }
                    }
                  ]
                }
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": "drawing objects",
                  "start": 9908,
                  "end": 9925,
                  "loc": {
                    "start": {
                      "line": 277,
                      "column": 4
                    },
                    "end": {
                      "line": 277,
                      "column": 21
                    }
                  },
                  "range": [
                    9908,
                    9925
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 10343,
              "end": 10439,
              "loc": {
                "start": {
                  "line": 289,
                  "column": 4
                },
                "end": {
                  "line": 291,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 10349,
                "end": 10358,
                "loc": {
                  "start": {
                    "line": 289,
                    "column": 10
                  },
                  "end": {
                    "line": 289,
                    "column": 19
                  }
                },
                "name": "drawPoint"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 10358,
                "end": 10439,
                "loc": {
                  "start": {
                    "line": 289,
                    "column": 19
                  },
                  "end": {
                    "line": 291,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 10359,
                    "end": 10362,
                    "loc": {
                      "start": {
                        "line": 289,
                        "column": 20
                      },
                      "end": {
                        "line": 289,
                        "column": 23
                      }
                    },
                    "name": "pos"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 10364,
                  "end": 10439,
                  "loc": {
                    "start": {
                      "line": 289,
                      "column": 25
                    },
                    "end": {
                      "line": 291,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 10374,
                      "end": 10433,
                      "loc": {
                        "start": {
                          "line": 290,
                          "column": 8
                        },
                        "end": {
                          "line": 290,
                          "column": 67
                        }
                      },
                      "argument": {
                        "type": "AwaitExpression",
                        "start": 10381,
                        "end": 10432,
                        "loc": {
                          "start": {
                            "line": 290,
                            "column": 15
                          },
                          "end": {
                            "line": 290,
                            "column": 66
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 10387,
                          "end": 10432,
                          "loc": {
                            "start": {
                              "line": 290,
                              "column": 21
                            },
                            "end": {
                              "line": 290,
                              "column": 66
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 10387,
                            "end": 10403,
                            "loc": {
                              "start": {
                                "line": 290,
                                "column": 21
                              },
                              "end": {
                                "line": 290,
                                "column": 37
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 10387,
                              "end": 10391,
                              "loc": {
                                "start": {
                                  "line": 290,
                                  "column": 21
                                },
                                "end": {
                                  "line": 290,
                                  "column": 25
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 10392,
                              "end": 10403,
                              "loc": {
                                "start": {
                                  "line": 290,
                                  "column": 26
                                },
                                "end": {
                                  "line": 290,
                                  "column": 37
                                }
                              },
                              "name": "_drawSimple"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Literal",
                              "start": 10404,
                              "end": 10411,
                              "loc": {
                                "start": {
                                  "line": 290,
                                  "column": 38
                                },
                                "end": {
                                  "line": 290,
                                  "column": 45
                                }
                              },
                              "value": "point",
                              "rawValue": "point",
                              "raw": "'point'"
                            },
                            {
                              "type": "Identifier",
                              "start": 10413,
                              "end": 10424,
                              "loc": {
                                "start": {
                                  "line": 290,
                                  "column": 47
                                },
                                "end": {
                                  "line": 290,
                                  "column": 58
                                }
                              },
                              "name": "SketchPoint"
                            },
                            {
                              "type": "ArrayExpression",
                              "start": 10426,
                              "end": 10431,
                              "loc": {
                                "start": {
                                  "line": 290,
                                  "column": 60
                                },
                                "end": {
                                  "line": 290,
                                  "column": 65
                                }
                              },
                              "elements": [
                                {
                                  "type": "Identifier",
                                  "start": 10427,
                                  "end": 10430,
                                  "loc": {
                                    "start": {
                                      "line": 290,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 290,
                                      "column": 64
                                    }
                                  },
                                  "name": "pos"
                                }
                              ]
                            }
                          ]
                        }
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 10444,
              "end": 10551,
              "loc": {
                "start": {
                  "line": 292,
                  "column": 4
                },
                "end": {
                  "line": 294,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 10450,
                "end": 10458,
                "loc": {
                  "start": {
                    "line": 292,
                    "column": 10
                  },
                  "end": {
                    "line": 292,
                    "column": 18
                  }
                },
                "name": "drawLine"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 10458,
                "end": 10551,
                "loc": {
                  "start": {
                    "line": 292,
                    "column": 18
                  },
                  "end": {
                    "line": 294,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 10459,
                    "end": 10464,
                    "loc": {
                      "start": {
                        "line": 292,
                        "column": 19
                      },
                      "end": {
                        "line": 292,
                        "column": 24
                      }
                    },
                    "name": "start"
                  },
                  {
                    "type": "Identifier",
                    "start": 10466,
                    "end": 10469,
                    "loc": {
                      "start": {
                        "line": 292,
                        "column": 26
                      },
                      "end": {
                        "line": 292,
                        "column": 29
                      }
                    },
                    "name": "end"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 10471,
                  "end": 10551,
                  "loc": {
                    "start": {
                      "line": 292,
                      "column": 31
                    },
                    "end": {
                      "line": 294,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 10481,
                      "end": 10545,
                      "loc": {
                        "start": {
                          "line": 293,
                          "column": 8
                        },
                        "end": {
                          "line": 293,
                          "column": 72
                        }
                      },
                      "argument": {
                        "type": "AwaitExpression",
                        "start": 10488,
                        "end": 10544,
                        "loc": {
                          "start": {
                            "line": 293,
                            "column": 15
                          },
                          "end": {
                            "line": 293,
                            "column": 71
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 10494,
                          "end": 10544,
                          "loc": {
                            "start": {
                              "line": 293,
                              "column": 21
                            },
                            "end": {
                              "line": 293,
                              "column": 71
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 10494,
                            "end": 10510,
                            "loc": {
                              "start": {
                                "line": 293,
                                "column": 21
                              },
                              "end": {
                                "line": 293,
                                "column": 37
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 10494,
                              "end": 10498,
                              "loc": {
                                "start": {
                                  "line": 293,
                                  "column": 21
                                },
                                "end": {
                                  "line": 293,
                                  "column": 25
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 10499,
                              "end": 10510,
                              "loc": {
                                "start": {
                                  "line": 293,
                                  "column": 26
                                },
                                "end": {
                                  "line": 293,
                                  "column": 37
                                }
                              },
                              "name": "_drawSimple"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Literal",
                              "start": 10511,
                              "end": 10517,
                              "loc": {
                                "start": {
                                  "line": 293,
                                  "column": 38
                                },
                                "end": {
                                  "line": 293,
                                  "column": 44
                                }
                              },
                              "value": "line",
                              "rawValue": "line",
                              "raw": "'line'"
                            },
                            {
                              "type": "Identifier",
                              "start": 10519,
                              "end": 10529,
                              "loc": {
                                "start": {
                                  "line": 293,
                                  "column": 46
                                },
                                "end": {
                                  "line": 293,
                                  "column": 56
                                }
                              },
                              "name": "SketchLine"
                            },
                            {
                              "type": "ArrayExpression",
                              "start": 10531,
                              "end": 10543,
                              "loc": {
                                "start": {
                                  "line": 293,
                                  "column": 58
                                },
                                "end": {
                                  "line": 293,
                                  "column": 70
                                }
                              },
                              "elements": [
                                {
                                  "type": "Identifier",
                                  "start": 10532,
                                  "end": 10537,
                                  "loc": {
                                    "start": {
                                      "line": 293,
                                      "column": 59
                                    },
                                    "end": {
                                      "line": 293,
                                      "column": 64
                                    }
                                  },
                                  "name": "start"
                                },
                                {
                                  "type": "Identifier",
                                  "start": 10539,
                                  "end": 10542,
                                  "loc": {
                                    "start": {
                                      "line": 293,
                                      "column": 66
                                    },
                                    "end": {
                                      "line": 293,
                                      "column": 69
                                    }
                                  },
                                  "name": "end"
                                }
                              ]
                            }
                          ]
                        }
                      }
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": "deleting stuff",
                  "start": 10557,
                  "end": 10573,
                  "loc": {
                    "start": {
                      "line": 296,
                      "column": 4
                    },
                    "end": {
                      "line": 296,
                      "column": 20
                    }
                  },
                  "range": [
                    10557,
                    10573
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 10578,
              "end": 10912,
              "loc": {
                "start": {
                  "line": 297,
                  "column": 4
                },
                "end": {
                  "line": 305,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 10584,
                "end": 10596,
                "loc": {
                  "start": {
                    "line": 297,
                    "column": 10
                  },
                  "end": {
                    "line": 297,
                    "column": 22
                  }
                },
                "name": "deleteObject"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 10596,
                "end": 10912,
                "loc": {
                  "start": {
                    "line": 297,
                    "column": 22
                  },
                  "end": {
                    "line": 305,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 10597,
                    "end": 10600,
                    "loc": {
                      "start": {
                        "line": 297,
                        "column": 23
                      },
                      "end": {
                        "line": 297,
                        "column": 26
                      }
                    },
                    "name": "obj"
                  },
                  {
                    "type": "Identifier",
                    "start": 10602,
                    "end": 10614,
                    "loc": {
                      "start": {
                        "line": 297,
                        "column": 28
                      },
                      "end": {
                        "line": 297,
                        "column": 40
                      }
                    },
                    "name": "leaveHandler"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 10616,
                  "end": 10912,
                  "loc": {
                    "start": {
                      "line": 297,
                      "column": 42
                    },
                    "end": {
                      "line": 305,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 10626,
                      "end": 10658,
                      "loc": {
                        "start": {
                          "line": 298,
                          "column": 8
                        },
                        "end": {
                          "line": 298,
                          "column": 40
                        }
                      },
                      "expression": {
                        "type": "AwaitExpression",
                        "start": 10626,
                        "end": 10657,
                        "loc": {
                          "start": {
                            "line": 298,
                            "column": 8
                          },
                          "end": {
                            "line": 298,
                            "column": 39
                          }
                        },
                        "all": false,
                        "argument": {
                          "type": "CallExpression",
                          "start": 10632,
                          "end": 10657,
                          "loc": {
                            "start": {
                              "line": 298,
                              "column": 14
                            },
                            "end": {
                              "line": 298,
                              "column": 39
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 10632,
                            "end": 10647,
                            "loc": {
                              "start": {
                                "line": 298,
                                "column": 14
                              },
                              "end": {
                                "line": 298,
                                "column": 29
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 10632,
                              "end": 10636,
                              "loc": {
                                "start": {
                                  "line": 298,
                                  "column": 14
                                },
                                "end": {
                                  "line": 298,
                                  "column": 18
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 10637,
                              "end": 10647,
                              "loc": {
                                "start": {
                                  "line": 298,
                                  "column": 19
                                },
                                "end": {
                                  "line": 298,
                                  "column": 29
                                }
                              },
                              "name": "chooseTool"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Literal",
                              "start": 10648,
                              "end": 10656,
                              "loc": {
                                "start": {
                                  "line": 298,
                                  "column": 30
                                },
                                "end": {
                                  "line": 298,
                                  "column": 38
                                }
                              },
                              "value": "delete",
                              "rawValue": "delete",
                              "raw": "'delete'"
                            }
                          ]
                        }
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 10667,
                      "end": 10771,
                      "loc": {
                        "start": {
                          "line": 299,
                          "column": 8
                        },
                        "end": {
                          "line": 301,
                          "column": 11
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 10671,
                          "end": 10770,
                          "loc": {
                            "start": {
                              "line": 299,
                              "column": 12
                            },
                            "end": {
                              "line": 301,
                              "column": 10
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 10671,
                            "end": 10678,
                            "loc": {
                              "start": {
                                "line": 299,
                                "column": 12
                              },
                              "end": {
                                "line": 299,
                                "column": 19
                              }
                            },
                            "name": "removed"
                          },
                          "init": {
                            "type": "AwaitExpression",
                            "start": 10681,
                            "end": 10770,
                            "loc": {
                              "start": {
                                "line": 299,
                                "column": 22
                              },
                              "end": {
                                "line": 301,
                                "column": 10
                              }
                            },
                            "all": false,
                            "argument": {
                              "type": "CallExpression",
                              "start": 10687,
                              "end": 10770,
                              "loc": {
                                "start": {
                                  "line": 299,
                                  "column": 28
                                },
                                "end": {
                                  "line": 301,
                                  "column": 10
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 10687,
                                "end": 10704,
                                "loc": {
                                  "start": {
                                    "line": 299,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 299,
                                    "column": 45
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 10687,
                                  "end": 10691,
                                  "loc": {
                                    "start": {
                                      "line": 299,
                                      "column": 28
                                    },
                                    "end": {
                                      "line": 299,
                                      "column": 32
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 10692,
                                  "end": 10704,
                                  "loc": {
                                    "start": {
                                      "line": 299,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 299,
                                      "column": 45
                                    }
                                  },
                                  "name": "trackRemoved"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ArrowFunctionExpression",
                                  "start": 10705,
                                  "end": 10769,
                                  "loc": {
                                    "start": {
                                      "line": 299,
                                      "column": 46
                                    },
                                    "end": {
                                      "line": 301,
                                      "column": 9
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": false,
                                  "async": true,
                                  "params": [],
                                  "body": {
                                    "type": "BlockStatement",
                                    "start": 10717,
                                    "end": 10769,
                                    "loc": {
                                      "start": {
                                        "line": 299,
                                        "column": 58
                                      },
                                      "end": {
                                        "line": 301,
                                        "column": 9
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 10731,
                                        "end": 10759,
                                        "loc": {
                                          "start": {
                                            "line": 300,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 300,
                                            "column": 40
                                          }
                                        },
                                        "expression": {
                                          "type": "AwaitExpression",
                                          "start": 10731,
                                          "end": 10758,
                                          "loc": {
                                            "start": {
                                              "line": 300,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 300,
                                              "column": 39
                                            }
                                          },
                                          "all": false,
                                          "argument": {
                                            "type": "CallExpression",
                                            "start": 10737,
                                            "end": 10758,
                                            "loc": {
                                              "start": {
                                                "line": 300,
                                                "column": 18
                                              },
                                              "end": {
                                                "line": 300,
                                                "column": 39
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 10737,
                                              "end": 10753,
                                              "loc": {
                                                "start": {
                                                  "line": 300,
                                                  "column": 18
                                                },
                                                "end": {
                                                  "line": 300,
                                                  "column": 34
                                                }
                                              },
                                              "object": {
                                                "type": "ThisExpression",
                                                "start": 10737,
                                                "end": 10741,
                                                "loc": {
                                                  "start": {
                                                    "line": 300,
                                                    "column": 18
                                                  },
                                                  "end": {
                                                    "line": 300,
                                                    "column": 22
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 10742,
                                                "end": 10753,
                                                "loc": {
                                                  "start": {
                                                    "line": 300,
                                                    "column": 23
                                                  },
                                                  "end": {
                                                    "line": 300,
                                                    "column": 34
                                                  }
                                                },
                                                "name": "clickObject"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Identifier",
                                                "start": 10754,
                                                "end": 10757,
                                                "loc": {
                                                  "start": {
                                                    "line": 300,
                                                    "column": 35
                                                  },
                                                  "end": {
                                                    "line": 300,
                                                    "column": 38
                                                  }
                                                },
                                                "name": "obj"
                                              }
                                            ]
                                          }
                                        }
                                      }
                                    ]
                                  }
                                }
                              ]
                            }
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 10780,
                      "end": 10842,
                      "loc": {
                        "start": {
                          "line": 302,
                          "column": 8
                        },
                        "end": {
                          "line": 302,
                          "column": 70
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 10780,
                        "end": 10841,
                        "loc": {
                          "start": {
                            "line": 302,
                            "column": 8
                          },
                          "end": {
                            "line": 302,
                            "column": 69
                          }
                        },
                        "callee": {
                          "type": "Identifier",
                          "start": 10780,
                          "end": 10785,
                          "loc": {
                            "start": {
                              "line": 302,
                              "column": 8
                            },
                            "end": {
                              "line": 302,
                              "column": 13
                            }
                          },
                          "name": "check"
                        },
                        "arguments": [
                          {
                            "type": "BinaryExpression",
                            "start": 10786,
                            "end": 10813,
                            "loc": {
                              "start": {
                                "line": 302,
                                "column": 14
                              },
                              "end": {
                                "line": 302,
                                "column": 41
                              }
                            },
                            "left": {
                              "type": "CallExpression",
                              "start": 10786,
                              "end": 10806,
                              "loc": {
                                "start": {
                                  "line": 302,
                                  "column": 14
                                },
                                "end": {
                                  "line": 302,
                                  "column": 34
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 10786,
                                "end": 10801,
                                "loc": {
                                  "start": {
                                    "line": 302,
                                    "column": 14
                                  },
                                  "end": {
                                    "line": 302,
                                    "column": 29
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 10786,
                                  "end": 10793,
                                  "loc": {
                                    "start": {
                                      "line": 302,
                                      "column": 14
                                    },
                                    "end": {
                                      "line": 302,
                                      "column": 21
                                    }
                                  },
                                  "name": "removed"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 10794,
                                  "end": 10801,
                                  "loc": {
                                    "start": {
                                      "line": 302,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 302,
                                      "column": 29
                                    }
                                  },
                                  "name": "indexOf"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 10802,
                                  "end": 10805,
                                  "loc": {
                                    "start": {
                                      "line": 302,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 302,
                                      "column": 33
                                    }
                                  },
                                  "name": "obj"
                                }
                              ]
                            },
                            "operator": "!==",
                            "right": {
                              "type": "UnaryExpression",
                              "start": 10811,
                              "end": 10813,
                              "loc": {
                                "start": {
                                  "line": 302,
                                  "column": 39
                                },
                                "end": {
                                  "line": 302,
                                  "column": 41
                                }
                              },
                              "operator": "-",
                              "prefix": true,
                              "argument": {
                                "type": "Literal",
                                "start": 10812,
                                "end": 10813,
                                "loc": {
                                  "start": {
                                    "line": 302,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 302,
                                    "column": 41
                                  }
                                },
                                "value": 1,
                                "rawValue": 1,
                                "raw": "1"
                              }
                            }
                          },
                          {
                            "type": "Literal",
                            "start": 10815,
                            "end": 10840,
                            "loc": {
                              "start": {
                                "line": 302,
                                "column": 43
                              },
                              "end": {
                                "line": 302,
                                "column": 68
                              }
                            },
                            "value": "Failed to delete object",
                            "rawValue": "Failed to delete object",
                            "raw": "\"Failed to delete object\""
                          }
                        ]
                      }
                    },
                    {
                      "type": "IfStatement",
                      "start": 10851,
                      "end": 10906,
                      "loc": {
                        "start": {
                          "line": 303,
                          "column": 8
                        },
                        "end": {
                          "line": 304,
                          "column": 36
                        }
                      },
                      "test": {
                        "type": "UnaryExpression",
                        "start": 10855,
                        "end": 10868,
                        "loc": {
                          "start": {
                            "line": 303,
                            "column": 12
                          },
                          "end": {
                            "line": 303,
                            "column": 25
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "Identifier",
                          "start": 10856,
                          "end": 10868,
                          "loc": {
                            "start": {
                              "line": 303,
                              "column": 13
                            },
                            "end": {
                              "line": 303,
                              "column": 25
                            }
                          },
                          "name": "leaveHandler"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 10882,
                        "end": 10906,
                        "loc": {
                          "start": {
                            "line": 304,
                            "column": 12
                          },
                          "end": {
                            "line": 304,
                            "column": 36
                          }
                        },
                        "expression": {
                          "type": "AwaitExpression",
                          "start": 10882,
                          "end": 10905,
                          "loc": {
                            "start": {
                              "line": 304,
                              "column": 12
                            },
                            "end": {
                              "line": 304,
                              "column": 35
                            }
                          },
                          "all": false,
                          "argument": {
                            "type": "CallExpression",
                            "start": 10888,
                            "end": 10905,
                            "loc": {
                              "start": {
                                "line": 304,
                                "column": 18
                              },
                              "end": {
                                "line": 304,
                                "column": 35
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 10888,
                              "end": 10903,
                              "loc": {
                                "start": {
                                  "line": 304,
                                  "column": 18
                                },
                                "end": {
                                  "line": 304,
                                  "column": 33
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 10888,
                                "end": 10892,
                                "loc": {
                                  "start": {
                                    "line": 304,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 304,
                                    "column": 22
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 10893,
                                "end": 10903,
                                "loc": {
                                  "start": {
                                    "line": 304,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 304,
                                    "column": 33
                                  }
                                },
                                "name": "chooseTool"
                              },
                              "computed": false
                            },
                            "arguments": []
                          }
                        }
                      },
                      "alternate": null
                    }
                  ],
                  "trailingComments": null
                },
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": "deleting stuff",
                  "start": 10557,
                  "end": 10573,
                  "loc": {
                    "start": {
                      "line": 296,
                      "column": 4
                    },
                    "end": {
                      "line": 296,
                      "column": 20
                    }
                  },
                  "range": [
                    10557,
                    10573
                  ]
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": "wrappers around internal structure of geometric objects",
                  "start": 10918,
                  "end": 10975,
                  "loc": {
                    "start": {
                      "line": 307,
                      "column": 4
                    },
                    "end": {
                      "line": 307,
                      "column": 61
                    }
                  },
                  "range": [
                    10918,
                    10975
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 10980,
              "end": 11305,
              "loc": {
                "start": {
                  "line": 308,
                  "column": 4
                },
                "end": {
                  "line": 314,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 10980,
                "end": 10991,
                "loc": {
                  "start": {
                    "line": 308,
                    "column": 4
                  },
                  "end": {
                    "line": 308,
                    "column": 15
                  }
                },
                "name": "getEndPoint",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 10991,
                "end": 11305,
                "loc": {
                  "start": {
                    "line": 308,
                    "column": 15
                  },
                  "end": {
                    "line": 314,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 10992,
                    "end": 10995,
                    "loc": {
                      "start": {
                        "line": 308,
                        "column": 16
                      },
                      "end": {
                        "line": 308,
                        "column": 19
                      }
                    },
                    "name": "obj"
                  },
                  {
                    "type": "Identifier",
                    "start": 10997,
                    "end": 11000,
                    "loc": {
                      "start": {
                        "line": 308,
                        "column": 21
                      },
                      "end": {
                        "line": 308,
                        "column": 24
                      }
                    },
                    "name": "idx"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 11002,
                  "end": 11305,
                  "loc": {
                    "start": {
                      "line": 308,
                      "column": 26
                    },
                    "end": {
                      "line": 314,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 11012,
                      "end": 11128,
                      "loc": {
                        "start": {
                          "line": 309,
                          "column": 8
                        },
                        "end": {
                          "line": 309,
                          "column": 124
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 11012,
                        "end": 11127,
                        "loc": {
                          "start": {
                            "line": 309,
                            "column": 8
                          },
                          "end": {
                            "line": 309,
                            "column": 123
                          }
                        },
                        "callee": {
                          "type": "Identifier",
                          "start": 11012,
                          "end": 11017,
                          "loc": {
                            "start": {
                              "line": 309,
                              "column": 8
                            },
                            "end": {
                              "line": 309,
                              "column": 13
                            }
                          },
                          "name": "check"
                        },
                        "arguments": [
                          {
                            "type": "LogicalExpression",
                            "start": 11018,
                            "end": 11071,
                            "loc": {
                              "start": {
                                "line": 309,
                                "column": 14
                              },
                              "end": {
                                "line": 309,
                                "column": 67
                              }
                            },
                            "left": {
                              "type": "BinaryExpression",
                              "start": 11018,
                              "end": 11043,
                              "loc": {
                                "start": {
                                  "line": 309,
                                  "column": 14
                                },
                                "end": {
                                  "line": 309,
                                  "column": 39
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 11018,
                                "end": 11021,
                                "loc": {
                                  "start": {
                                    "line": 309,
                                    "column": 14
                                  },
                                  "end": {
                                    "line": 309,
                                    "column": 17
                                  }
                                },
                                "name": "obj"
                              },
                              "operator": "instanceof",
                              "right": {
                                "type": "Identifier",
                                "start": 11033,
                                "end": 11043,
                                "loc": {
                                  "start": {
                                    "line": 309,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 309,
                                    "column": 39
                                  }
                                },
                                "name": "SketchLine"
                              }
                            },
                            "operator": "||",
                            "right": {
                              "type": "BinaryExpression",
                              "start": 11047,
                              "end": 11071,
                              "loc": {
                                "start": {
                                  "line": 309,
                                  "column": 43
                                },
                                "end": {
                                  "line": 309,
                                  "column": 67
                                }
                              },
                              "left": {
                                "type": "Identifier",
                                "start": 11047,
                                "end": 11050,
                                "loc": {
                                  "start": {
                                    "line": 309,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 309,
                                    "column": 46
                                  }
                                },
                                "name": "obj"
                              },
                              "operator": "instanceof",
                              "right": {
                                "type": "Identifier",
                                "start": 11062,
                                "end": 11071,
                                "loc": {
                                  "start": {
                                    "line": 309,
                                    "column": 58
                                  },
                                  "end": {
                                    "line": 309,
                                    "column": 67
                                  }
                                },
                                "name": "SketchArc"
                              }
                            }
                          },
                          {
                            "type": "Literal",
                            "start": 11073,
                            "end": 11126,
                            "loc": {
                              "start": {
                                "line": 309,
                                "column": 69
                              },
                              "end": {
                                "line": 309,
                                "column": 122
                              }
                            },
                            "value": "Getting endpoint of something not being line or arc",
                            "rawValue": "Getting endpoint of something not being line or arc",
                            "raw": "\"Getting endpoint of something not being line or arc\""
                          }
                        ]
                      }
                    },
                    {
                      "type": "IfStatement",
                      "start": 11137,
                      "end": 11168,
                      "loc": {
                        "start": {
                          "line": 310,
                          "column": 8
                        },
                        "end": {
                          "line": 310,
                          "column": 39
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 11141,
                        "end": 11158,
                        "loc": {
                          "start": {
                            "line": 310,
                            "column": 12
                          },
                          "end": {
                            "line": 310,
                            "column": 29
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 11141,
                          "end": 11144,
                          "loc": {
                            "start": {
                              "line": 310,
                              "column": 12
                            },
                            "end": {
                              "line": 310,
                              "column": 15
                            }
                          },
                          "name": "idx"
                        },
                        "operator": "===",
                        "right": {
                          "type": "Identifier",
                          "start": 11149,
                          "end": 11158,
                          "loc": {
                            "start": {
                              "line": 310,
                              "column": 20
                            },
                            "end": {
                              "line": 310,
                              "column": 29
                            }
                          },
                          "name": "undefined"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 11160,
                        "end": 11168,
                        "loc": {
                          "start": {
                            "line": 310,
                            "column": 31
                          },
                          "end": {
                            "line": 310,
                            "column": 39
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 11160,
                          "end": 11167,
                          "loc": {
                            "start": {
                              "line": 310,
                              "column": 31
                            },
                            "end": {
                              "line": 310,
                              "column": 38
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "Identifier",
                            "start": 11160,
                            "end": 11163,
                            "loc": {
                              "start": {
                                "line": 310,
                                "column": 31
                              },
                              "end": {
                                "line": 310,
                                "column": 34
                              }
                            },
                            "name": "idx"
                          },
                          "right": {
                            "type": "Literal",
                            "start": 11166,
                            "end": 11167,
                            "loc": {
                              "start": {
                                "line": 310,
                                "column": 37
                              },
                              "end": {
                                "line": 310,
                                "column": 38
                              }
                            },
                            "value": 1,
                            "rawValue": 1,
                            "raw": "1"
                          }
                        }
                      },
                      "alternate": null
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 11177,
                      "end": 11203,
                      "loc": {
                        "start": {
                          "line": 311,
                          "column": 8
                        },
                        "end": {
                          "line": 311,
                          "column": 34
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 11181,
                          "end": 11202,
                          "loc": {
                            "start": {
                              "line": 311,
                              "column": 12
                            },
                            "end": {
                              "line": 311,
                              "column": 33
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 11181,
                            "end": 11184,
                            "loc": {
                              "start": {
                                "line": 311,
                                "column": 12
                              },
                              "end": {
                                "line": 311,
                                "column": 15
                              }
                            },
                            "name": "pnt"
                          },
                          "init": {
                            "type": "MemberExpression",
                            "start": 11187,
                            "end": 11202,
                            "loc": {
                              "start": {
                                "line": 311,
                                "column": 18
                              },
                              "end": {
                                "line": 311,
                                "column": 33
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 11187,
                              "end": 11197,
                              "loc": {
                                "start": {
                                  "line": 311,
                                  "column": 18
                                },
                                "end": {
                                  "line": 311,
                                  "column": 28
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 11187,
                                "end": 11190,
                                "loc": {
                                  "start": {
                                    "line": 311,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 311,
                                    "column": 21
                                  }
                                },
                                "name": "obj"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 11191,
                                "end": 11197,
                                "loc": {
                                  "start": {
                                    "line": 311,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 311,
                                    "column": 28
                                  }
                                },
                                "name": "points"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11198,
                              "end": 11201,
                              "loc": {
                                "start": {
                                  "line": 311,
                                  "column": 29
                                },
                                "end": {
                                  "line": 311,
                                  "column": 32
                                }
                              },
                              "name": "idx"
                            },
                            "computed": true
                          }
                        }
                      ],
                      "kind": "var"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 11212,
                      "end": 11279,
                      "loc": {
                        "start": {
                          "line": 312,
                          "column": 8
                        },
                        "end": {
                          "line": 312,
                          "column": 75
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 11212,
                        "end": 11278,
                        "loc": {
                          "start": {
                            "line": 312,
                            "column": 8
                          },
                          "end": {
                            "line": 312,
                            "column": 74
                          }
                        },
                        "callee": {
                          "type": "Identifier",
                          "start": 11212,
                          "end": 11217,
                          "loc": {
                            "start": {
                              "line": 312,
                              "column": 8
                            },
                            "end": {
                              "line": 312,
                              "column": 13
                            }
                          },
                          "name": "check"
                        },
                        "arguments": [
                          {
                            "type": "BinaryExpression",
                            "start": 11218,
                            "end": 11244,
                            "loc": {
                              "start": {
                                "line": 312,
                                "column": 14
                              },
                              "end": {
                                "line": 312,
                                "column": 40
                              }
                            },
                            "left": {
                              "type": "Identifier",
                              "start": 11218,
                              "end": 11221,
                              "loc": {
                                "start": {
                                  "line": 312,
                                  "column": 14
                                },
                                "end": {
                                  "line": 312,
                                  "column": 17
                                }
                              },
                              "name": "pnt"
                            },
                            "operator": "instanceof",
                            "right": {
                              "type": "Identifier",
                              "start": 11233,
                              "end": 11244,
                              "loc": {
                                "start": {
                                  "line": 312,
                                  "column": 29
                                },
                                "end": {
                                  "line": 312,
                                  "column": 40
                                }
                              },
                              "name": "SketchPoint"
                            }
                          },
                          {
                            "type": "Literal",
                            "start": 11246,
                            "end": 11277,
                            "loc": {
                              "start": {
                                "line": 312,
                                "column": 42
                              },
                              "end": {
                                "line": 312,
                                "column": 73
                              }
                            },
                            "value": "Cannot get endpoint of object",
                            "rawValue": "Cannot get endpoint of object",
                            "raw": "\"Cannot get endpoint of object\""
                          }
                        ]
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 11288,
                      "end": 11299,
                      "loc": {
                        "start": {
                          "line": 313,
                          "column": 8
                        },
                        "end": {
                          "line": 313,
                          "column": 19
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 11295,
                        "end": 11298,
                        "loc": {
                          "start": {
                            "line": 313,
                            "column": 15
                          },
                          "end": {
                            "line": 313,
                            "column": 18
                          }
                        },
                        "name": "pnt"
                      }
                    }
                  ]
                }
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": "wrappers around internal structure of geometric objects",
                  "start": 10918,
                  "end": 10975,
                  "loc": {
                    "start": {
                      "line": 307,
                      "column": 4
                    },
                    "end": {
                      "line": 307,
                      "column": 61
                    }
                  },
                  "range": [
                    10918,
                    10975
                  ]
                }
              ]
            },
            {
              "type": "MethodDefinition",
              "start": 11310,
              "end": 11377,
              "loc": {
                "start": {
                  "line": 315,
                  "column": 4
                },
                "end": {
                  "line": 317,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 11310,
                "end": 11323,
                "loc": {
                  "start": {
                    "line": 315,
                    "column": 4
                  },
                  "end": {
                    "line": 315,
                    "column": 17
                  }
                },
                "name": "getStartPoint"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 11323,
                "end": 11377,
                "loc": {
                  "start": {
                    "line": 315,
                    "column": 17
                  },
                  "end": {
                    "line": 317,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 11324,
                    "end": 11327,
                    "loc": {
                      "start": {
                        "line": 315,
                        "column": 18
                      },
                      "end": {
                        "line": 315,
                        "column": 21
                      }
                    },
                    "name": "obj"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 11329,
                  "end": 11377,
                  "loc": {
                    "start": {
                      "line": 315,
                      "column": 23
                    },
                    "end": {
                      "line": 317,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 11339,
                      "end": 11371,
                      "loc": {
                        "start": {
                          "line": 316,
                          "column": 8
                        },
                        "end": {
                          "line": 316,
                          "column": 40
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 11346,
                        "end": 11370,
                        "loc": {
                          "start": {
                            "line": 316,
                            "column": 15
                          },
                          "end": {
                            "line": 316,
                            "column": 39
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 11346,
                          "end": 11362,
                          "loc": {
                            "start": {
                              "line": 316,
                              "column": 15
                            },
                            "end": {
                              "line": 316,
                              "column": 31
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 11346,
                            "end": 11350,
                            "loc": {
                              "start": {
                                "line": 316,
                                "column": 15
                              },
                              "end": {
                                "line": 316,
                                "column": 19
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11351,
                            "end": 11362,
                            "loc": {
                              "start": {
                                "line": 316,
                                "column": 20
                              },
                              "end": {
                                "line": 316,
                                "column": 31
                              }
                            },
                            "name": "getEndPoint"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 11363,
                            "end": 11366,
                            "loc": {
                              "start": {
                                "line": 316,
                                "column": 32
                              },
                              "end": {
                                "line": 316,
                                "column": 35
                              }
                            },
                            "name": "obj"
                          },
                          {
                            "type": "Literal",
                            "start": 11368,
                            "end": 11369,
                            "loc": {
                              "start": {
                                "line": 316,
                                "column": 37
                              },
                              "end": {
                                "line": 316,
                                "column": 38
                              }
                            },
                            "value": 0,
                            "rawValue": 0,
                            "raw": "0"
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 11382,
              "end": 11520,
              "loc": {
                "start": {
                  "line": 318,
                  "column": 4
                },
                "end": {
                  "line": 321,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 11382,
                "end": 11396,
                "loc": {
                  "start": {
                    "line": 318,
                    "column": 4
                  },
                  "end": {
                    "line": 318,
                    "column": 18
                  }
                },
                "name": "getCenterPoint"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 11396,
                "end": 11520,
                "loc": {
                  "start": {
                    "line": 318,
                    "column": 18
                  },
                  "end": {
                    "line": 321,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 11397,
                    "end": 11400,
                    "loc": {
                      "start": {
                        "line": 318,
                        "column": 19
                      },
                      "end": {
                        "line": 318,
                        "column": 22
                      }
                    },
                    "name": "obj"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 11402,
                  "end": 11520,
                  "loc": {
                    "start": {
                      "line": 318,
                      "column": 24
                    },
                    "end": {
                      "line": 321,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 11412,
                      "end": 11482,
                      "loc": {
                        "start": {
                          "line": 319,
                          "column": 8
                        },
                        "end": {
                          "line": 319,
                          "column": 78
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 11412,
                        "end": 11481,
                        "loc": {
                          "start": {
                            "line": 319,
                            "column": 8
                          },
                          "end": {
                            "line": 319,
                            "column": 77
                          }
                        },
                        "callee": {
                          "type": "Identifier",
                          "start": 11412,
                          "end": 11417,
                          "loc": {
                            "start": {
                              "line": 319,
                              "column": 8
                            },
                            "end": {
                              "line": 319,
                              "column": 13
                            }
                          },
                          "name": "check"
                        },
                        "arguments": [
                          {
                            "type": "BinaryExpression",
                            "start": 11418,
                            "end": 11442,
                            "loc": {
                              "start": {
                                "line": 319,
                                "column": 14
                              },
                              "end": {
                                "line": 319,
                                "column": 38
                              }
                            },
                            "left": {
                              "type": "Identifier",
                              "start": 11418,
                              "end": 11421,
                              "loc": {
                                "start": {
                                  "line": 319,
                                  "column": 14
                                },
                                "end": {
                                  "line": 319,
                                  "column": 17
                                }
                              },
                              "name": "obj"
                            },
                            "operator": "instanceof",
                            "right": {
                              "type": "Identifier",
                              "start": 11433,
                              "end": 11442,
                              "loc": {
                                "start": {
                                  "line": 319,
                                  "column": 29
                                },
                                "end": {
                                  "line": 319,
                                  "column": 38
                                }
                              },
                              "name": "SketchArc"
                            }
                          },
                          {
                            "type": "Literal",
                            "start": 11444,
                            "end": 11480,
                            "loc": {
                              "start": {
                                "line": 319,
                                "column": 40
                              },
                              "end": {
                                "line": 319,
                                "column": 76
                              }
                            },
                            "value": "Getting center point of not an arc",
                            "rawValue": "Getting center point of not an arc",
                            "raw": "\"Getting center point of not an arc\""
                          }
                        ]
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 11491,
                      "end": 11514,
                      "loc": {
                        "start": {
                          "line": 320,
                          "column": 8
                        },
                        "end": {
                          "line": 320,
                          "column": 31
                        }
                      },
                      "argument": {
                        "type": "MemberExpression",
                        "start": 11498,
                        "end": 11513,
                        "loc": {
                          "start": {
                            "line": 320,
                            "column": 15
                          },
                          "end": {
                            "line": 320,
                            "column": 30
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 11498,
                          "end": 11501,
                          "loc": {
                            "start": {
                              "line": 320,
                              "column": 15
                            },
                            "end": {
                              "line": 320,
                              "column": 18
                            }
                          },
                          "name": "obj"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 11502,
                          "end": 11513,
                          "loc": {
                            "start": {
                              "line": 320,
                              "column": 19
                            },
                            "end": {
                              "line": 320,
                              "column": 30
                            }
                          },
                          "name": "centerPoint"
                        },
                        "computed": false
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 11525,
              "end": 11688,
              "loc": {
                "start": {
                  "line": 322,
                  "column": 4
                },
                "end": {
                  "line": 325,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 11525,
                "end": 11531,
                "loc": {
                  "start": {
                    "line": 322,
                    "column": 4
                  },
                  "end": {
                    "line": 322,
                    "column": 10
                  }
                },
                "name": "getPos"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 11531,
                "end": 11688,
                "loc": {
                  "start": {
                    "line": 322,
                    "column": 10
                  },
                  "end": {
                    "line": 325,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 11532,
                    "end": 11535,
                    "loc": {
                      "start": {
                        "line": 322,
                        "column": 11
                      },
                      "end": {
                        "line": 322,
                        "column": 14
                      }
                    },
                    "name": "obj"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 11537,
                  "end": 11688,
                  "loc": {
                    "start": {
                      "line": 322,
                      "column": 16
                    },
                    "end": {
                      "line": 325,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 11547,
                      "end": 11616,
                      "loc": {
                        "start": {
                          "line": 323,
                          "column": 8
                        },
                        "end": {
                          "line": 323,
                          "column": 77
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 11547,
                        "end": 11615,
                        "loc": {
                          "start": {
                            "line": 323,
                            "column": 8
                          },
                          "end": {
                            "line": 323,
                            "column": 76
                          }
                        },
                        "callee": {
                          "type": "Identifier",
                          "start": 11547,
                          "end": 11552,
                          "loc": {
                            "start": {
                              "line": 323,
                              "column": 8
                            },
                            "end": {
                              "line": 323,
                              "column": 13
                            }
                          },
                          "name": "check"
                        },
                        "arguments": [
                          {
                            "type": "BinaryExpression",
                            "start": 11553,
                            "end": 11579,
                            "loc": {
                              "start": {
                                "line": 323,
                                "column": 14
                              },
                              "end": {
                                "line": 323,
                                "column": 40
                              }
                            },
                            "left": {
                              "type": "Identifier",
                              "start": 11553,
                              "end": 11556,
                              "loc": {
                                "start": {
                                  "line": 323,
                                  "column": 14
                                },
                                "end": {
                                  "line": 323,
                                  "column": 17
                                }
                              },
                              "name": "obj"
                            },
                            "operator": "instanceof",
                            "right": {
                              "type": "Identifier",
                              "start": 11568,
                              "end": 11579,
                              "loc": {
                                "start": {
                                  "line": 323,
                                  "column": 29
                                },
                                "end": {
                                  "line": 323,
                                  "column": 40
                                }
                              },
                              "name": "SketchPoint"
                            }
                          },
                          {
                            "type": "Literal",
                            "start": 11581,
                            "end": 11614,
                            "loc": {
                              "start": {
                                "line": 323,
                                "column": 42
                              },
                              "end": {
                                "line": 323,
                                "column": 75
                              }
                            },
                            "value": "Getting position of not a point",
                            "rawValue": "Getting position of not a point",
                            "raw": "\"Getting position of not a point\""
                          }
                        ]
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 11625,
                      "end": 11682,
                      "loc": {
                        "start": {
                          "line": 324,
                          "column": 8
                        },
                        "end": {
                          "line": 324,
                          "column": 65
                        }
                      },
                      "argument": {
                        "type": "NewExpression",
                        "start": 11632,
                        "end": 11681,
                        "loc": {
                          "start": {
                            "line": 324,
                            "column": 15
                          },
                          "end": {
                            "line": 324,
                            "column": 64
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 11636,
                          "end": 11649,
                          "loc": {
                            "start": {
                              "line": 324,
                              "column": 19
                            },
                            "end": {
                              "line": 324,
                              "column": 32
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 11636,
                            "end": 11641,
                            "loc": {
                              "start": {
                                "line": 324,
                                "column": 19
                              },
                              "end": {
                                "line": 324,
                                "column": 24
                              }
                            },
                            "name": "THREE"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11642,
                            "end": 11649,
                            "loc": {
                              "start": {
                                "line": 324,
                                "column": 25
                              },
                              "end": {
                                "line": 324,
                                "column": 32
                              }
                            },
                            "name": "Vector2"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 11650,
                            "end": 11664,
                            "loc": {
                              "start": {
                                "line": 324,
                                "column": 33
                              },
                              "end": {
                                "line": 324,
                                "column": 47
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 11650,
                              "end": 11662,
                              "loc": {
                                "start": {
                                  "line": 324,
                                  "column": 33
                                },
                                "end": {
                                  "line": 324,
                                  "column": 45
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 11650,
                                "end": 11653,
                                "loc": {
                                  "start": {
                                    "line": 324,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 324,
                                    "column": 36
                                  }
                                },
                                "name": "obj"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 11654,
                                "end": 11662,
                                "loc": {
                                  "start": {
                                    "line": 324,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 324,
                                    "column": 45
                                  }
                                },
                                "name": "position"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11663,
                              "end": 11664,
                              "loc": {
                                "start": {
                                  "line": 324,
                                  "column": 46
                                },
                                "end": {
                                  "line": 324,
                                  "column": 47
                                }
                              },
                              "name": "x"
                            },
                            "computed": false
                          },
                          {
                            "type": "MemberExpression",
                            "start": 11666,
                            "end": 11680,
                            "loc": {
                              "start": {
                                "line": 324,
                                "column": 49
                              },
                              "end": {
                                "line": 324,
                                "column": 63
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 11666,
                              "end": 11678,
                              "loc": {
                                "start": {
                                  "line": 324,
                                  "column": 49
                                },
                                "end": {
                                  "line": 324,
                                  "column": 61
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 11666,
                                "end": 11669,
                                "loc": {
                                  "start": {
                                    "line": 324,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 324,
                                    "column": 52
                                  }
                                },
                                "name": "obj"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 11670,
                                "end": 11678,
                                "loc": {
                                  "start": {
                                    "line": 324,
                                    "column": 53
                                  },
                                  "end": {
                                    "line": 324,
                                    "column": 61
                                  }
                                },
                                "name": "position"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11679,
                              "end": 11680,
                              "loc": {
                                "start": {
                                  "line": 324,
                                  "column": 62
                                },
                                "end": {
                                  "line": 324,
                                  "column": 63
                                }
                              },
                              "name": "y"
                            },
                            "computed": false
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            },
            {
              "type": "MethodDefinition",
              "start": 11693,
              "end": 12031,
              "loc": {
                "start": {
                  "line": 326,
                  "column": 4
                },
                "end": {
                  "line": 334,
                  "column": 5
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 11693,
                "end": 11703,
                "loc": {
                  "start": {
                    "line": 326,
                    "column": 4
                  },
                  "end": {
                    "line": 326,
                    "column": 14
                  }
                },
                "name": "getPointOn"
              },
              "static": false,
              "kind": "method",
              "value": {
                "type": "FunctionExpression",
                "start": 11703,
                "end": 12031,
                "loc": {
                  "start": {
                    "line": 326,
                    "column": 14
                  },
                  "end": {
                    "line": 334,
                    "column": 5
                  }
                },
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 11704,
                    "end": 11707,
                    "loc": {
                      "start": {
                        "line": 326,
                        "column": 15
                      },
                      "end": {
                        "line": 326,
                        "column": 18
                      }
                    },
                    "name": "obj"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 11709,
                  "end": 12031,
                  "loc": {
                    "start": {
                      "line": 326,
                      "column": 20
                    },
                    "end": {
                      "line": 334,
                      "column": 5
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 11719,
                      "end": 11727,
                      "loc": {
                        "start": {
                          "line": 327,
                          "column": 8
                        },
                        "end": {
                          "line": 327,
                          "column": 16
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 11723,
                          "end": 11726,
                          "loc": {
                            "start": {
                              "line": 327,
                              "column": 12
                            },
                            "end": {
                              "line": 327,
                              "column": 15
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 11723,
                            "end": 11726,
                            "loc": {
                              "start": {
                                "line": 327,
                                "column": 12
                              },
                              "end": {
                                "line": 327,
                                "column": 15
                              }
                            },
                            "name": "res"
                          },
                          "init": null
                        }
                      ],
                      "kind": "let"
                    },
                    {
                      "type": "IfStatement",
                      "start": 11736,
                      "end": 11914,
                      "loc": {
                        "start": {
                          "line": 328,
                          "column": 8
                        },
                        "end": {
                          "line": 331,
                          "column": 42
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 11740,
                        "end": 11766,
                        "loc": {
                          "start": {
                            "line": 328,
                            "column": 12
                          },
                          "end": {
                            "line": 328,
                            "column": 38
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 11740,
                          "end": 11743,
                          "loc": {
                            "start": {
                              "line": 328,
                              "column": 12
                            },
                            "end": {
                              "line": 328,
                              "column": 15
                            }
                          },
                          "name": "obj"
                        },
                        "operator": "instanceof",
                        "right": {
                          "type": "Identifier",
                          "start": 11755,
                          "end": 11766,
                          "loc": {
                            "start": {
                              "line": 328,
                              "column": 27
                            },
                            "end": {
                              "line": 328,
                              "column": 38
                            }
                          },
                          "name": "SketchPoint"
                        }
                      },
                      "consequent": {
                        "type": "ExpressionStatement",
                        "start": 11780,
                        "end": 11799,
                        "loc": {
                          "start": {
                            "line": 329,
                            "column": 12
                          },
                          "end": {
                            "line": 329,
                            "column": 31
                          }
                        },
                        "expression": {
                          "type": "AssignmentExpression",
                          "start": 11780,
                          "end": 11798,
                          "loc": {
                            "start": {
                              "line": 329,
                              "column": 12
                            },
                            "end": {
                              "line": 329,
                              "column": 30
                            }
                          },
                          "operator": "=",
                          "left": {
                            "type": "Identifier",
                            "start": 11780,
                            "end": 11783,
                            "loc": {
                              "start": {
                                "line": 329,
                                "column": 12
                              },
                              "end": {
                                "line": 329,
                                "column": 15
                              }
                            },
                            "name": "res"
                          },
                          "right": {
                            "type": "MemberExpression",
                            "start": 11786,
                            "end": 11798,
                            "loc": {
                              "start": {
                                "line": 329,
                                "column": 18
                              },
                              "end": {
                                "line": 329,
                                "column": 30
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 11786,
                              "end": 11789,
                              "loc": {
                                "start": {
                                  "line": 329,
                                  "column": 18
                                },
                                "end": {
                                  "line": 329,
                                  "column": 21
                                }
                              },
                              "name": "obj"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11790,
                              "end": 11798,
                              "loc": {
                                "start": {
                                  "line": 329,
                                  "column": 22
                                },
                                "end": {
                                  "line": 329,
                                  "column": 30
                                }
                              },
                              "name": "position"
                            },
                            "computed": false
                          }
                        }
                      },
                      "alternate": {
                        "type": "IfStatement",
                        "start": 11813,
                        "end": 11914,
                        "loc": {
                          "start": {
                            "line": 330,
                            "column": 13
                          },
                          "end": {
                            "line": 331,
                            "column": 42
                          }
                        },
                        "test": {
                          "type": "LogicalExpression",
                          "start": 11817,
                          "end": 11870,
                          "loc": {
                            "start": {
                              "line": 330,
                              "column": 17
                            },
                            "end": {
                              "line": 330,
                              "column": 70
                            }
                          },
                          "left": {
                            "type": "BinaryExpression",
                            "start": 11817,
                            "end": 11842,
                            "loc": {
                              "start": {
                                "line": 330,
                                "column": 17
                              },
                              "end": {
                                "line": 330,
                                "column": 42
                              }
                            },
                            "left": {
                              "type": "Identifier",
                              "start": 11817,
                              "end": 11820,
                              "loc": {
                                "start": {
                                  "line": 330,
                                  "column": 17
                                },
                                "end": {
                                  "line": 330,
                                  "column": 20
                                }
                              },
                              "name": "obj"
                            },
                            "operator": "instanceof",
                            "right": {
                              "type": "Identifier",
                              "start": 11832,
                              "end": 11842,
                              "loc": {
                                "start": {
                                  "line": 330,
                                  "column": 32
                                },
                                "end": {
                                  "line": 330,
                                  "column": 42
                                }
                              },
                              "name": "SketchLine"
                            }
                          },
                          "operator": "||",
                          "right": {
                            "type": "BinaryExpression",
                            "start": 11846,
                            "end": 11870,
                            "loc": {
                              "start": {
                                "line": 330,
                                "column": 46
                              },
                              "end": {
                                "line": 330,
                                "column": 70
                              }
                            },
                            "left": {
                              "type": "Identifier",
                              "start": 11846,
                              "end": 11849,
                              "loc": {
                                "start": {
                                  "line": 330,
                                  "column": 46
                                },
                                "end": {
                                  "line": 330,
                                  "column": 49
                                }
                              },
                              "name": "obj"
                            },
                            "operator": "instanceof",
                            "right": {
                              "type": "Identifier",
                              "start": 11861,
                              "end": 11870,
                              "loc": {
                                "start": {
                                  "line": 330,
                                  "column": 61
                                },
                                "end": {
                                  "line": 330,
                                  "column": 70
                                }
                              },
                              "name": "SketchArc"
                            }
                          }
                        },
                        "consequent": {
                          "type": "ExpressionStatement",
                          "start": 11884,
                          "end": 11914,
                          "loc": {
                            "start": {
                              "line": 331,
                              "column": 12
                            },
                            "end": {
                              "line": 331,
                              "column": 42
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 11884,
                            "end": 11913,
                            "loc": {
                              "start": {
                                "line": 331,
                                "column": 12
                              },
                              "end": {
                                "line": 331,
                                "column": 41
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "Identifier",
                              "start": 11884,
                              "end": 11887,
                              "loc": {
                                "start": {
                                  "line": 331,
                                  "column": 12
                                },
                                "end": {
                                  "line": 331,
                                  "column": 15
                                }
                              },
                              "name": "res"
                            },
                            "right": {
                              "type": "CallExpression",
                              "start": 11890,
                              "end": 11913,
                              "loc": {
                                "start": {
                                  "line": 331,
                                  "column": 18
                                },
                                "end": {
                                  "line": 331,
                                  "column": 41
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 11890,
                                "end": 11911,
                                "loc": {
                                  "start": {
                                    "line": 331,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 331,
                                    "column": 39
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 11890,
                                  "end": 11893,
                                  "loc": {
                                    "start": {
                                      "line": 331,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 331,
                                      "column": 21
                                    }
                                  },
                                  "name": "obj"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 11894,
                                  "end": 11911,
                                  "loc": {
                                    "start": {
                                      "line": 331,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 331,
                                      "column": 39
                                    }
                                  },
                                  "name": "getMiddlePosition"
                                },
                                "computed": false
                              },
                              "arguments": []
                            }
                          }
                        },
                        "alternate": null
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 11923,
                      "end": 11977,
                      "loc": {
                        "start": {
                          "line": 332,
                          "column": 8
                        },
                        "end": {
                          "line": 332,
                          "column": 62
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 11923,
                        "end": 11976,
                        "loc": {
                          "start": {
                            "line": 332,
                            "column": 8
                          },
                          "end": {
                            "line": 332,
                            "column": 61
                          }
                        },
                        "callee": {
                          "type": "Identifier",
                          "start": 11923,
                          "end": 11928,
                          "loc": {
                            "start": {
                              "line": 332,
                              "column": 8
                            },
                            "end": {
                              "line": 332,
                              "column": 13
                            }
                          },
                          "name": "check"
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 11929,
                            "end": 11932,
                            "loc": {
                              "start": {
                                "line": 332,
                                "column": 14
                              },
                              "end": {
                                "line": 332,
                                "column": 17
                              }
                            },
                            "name": "res"
                          },
                          {
                            "type": "Literal",
                            "start": 11934,
                            "end": 11975,
                            "loc": {
                              "start": {
                                "line": 332,
                                "column": 19
                              },
                              "end": {
                                "line": 332,
                                "column": 60
                              }
                            },
                            "value": "Getting point on object of unknown type",
                            "rawValue": "Getting point on object of unknown type",
                            "raw": "\"Getting point on object of unknown type\""
                          }
                        ]
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 11986,
                      "end": 12025,
                      "loc": {
                        "start": {
                          "line": 333,
                          "column": 8
                        },
                        "end": {
                          "line": 333,
                          "column": 47
                        }
                      },
                      "argument": {
                        "type": "NewExpression",
                        "start": 11993,
                        "end": 12024,
                        "loc": {
                          "start": {
                            "line": 333,
                            "column": 15
                          },
                          "end": {
                            "line": 333,
                            "column": 46
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 11997,
                          "end": 12010,
                          "loc": {
                            "start": {
                              "line": 333,
                              "column": 19
                            },
                            "end": {
                              "line": 333,
                              "column": 32
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 11997,
                            "end": 12002,
                            "loc": {
                              "start": {
                                "line": 333,
                                "column": 19
                              },
                              "end": {
                                "line": 333,
                                "column": 24
                              }
                            },
                            "name": "THREE"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12003,
                            "end": 12010,
                            "loc": {
                              "start": {
                                "line": 333,
                                "column": 25
                              },
                              "end": {
                                "line": 333,
                                "column": 32
                              }
                            },
                            "name": "Vector2"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 12011,
                            "end": 12016,
                            "loc": {
                              "start": {
                                "line": 333,
                                "column": 33
                              },
                              "end": {
                                "line": 333,
                                "column": 38
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 12011,
                              "end": 12014,
                              "loc": {
                                "start": {
                                  "line": 333,
                                  "column": 33
                                },
                                "end": {
                                  "line": 333,
                                  "column": 36
                                }
                              },
                              "name": "res"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 12015,
                              "end": 12016,
                              "loc": {
                                "start": {
                                  "line": 333,
                                  "column": 37
                                },
                                "end": {
                                  "line": 333,
                                  "column": 38
                                }
                              },
                              "name": "x"
                            },
                            "computed": false
                          },
                          {
                            "type": "MemberExpression",
                            "start": 12018,
                            "end": 12023,
                            "loc": {
                              "start": {
                                "line": 333,
                                "column": 40
                              },
                              "end": {
                                "line": 333,
                                "column": 45
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 12018,
                              "end": 12021,
                              "loc": {
                                "start": {
                                  "line": 333,
                                  "column": 40
                                },
                                "end": {
                                  "line": 333,
                                  "column": 43
                                }
                              },
                              "name": "res"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 12022,
                              "end": 12023,
                              "loc": {
                                "start": {
                                  "line": 333,
                                  "column": 44
                                },
                                "end": {
                                  "line": 333,
                                  "column": 45
                                }
                              },
                              "name": "y"
                            },
                            "computed": false
                          }
                        ]
                      }
                    }
                  ]
                }
              }
            }
          ]
        },
        "leadingComments": [],
        "trailingComments": []
      },
      "specifiers": [],
      "source": null
    },
    {
      "type": "EmptyStatement",
      "start": 12033,
      "end": 12034,
      "loc": {
        "start": {
          "line": 335,
          "column": 1
        },
        "end": {
          "line": 335,
          "column": 2
        }
      },
      "leadingComments": null,
      "trailingComments": [
        {
          "type": "CommentLine",
          "value": "TODO",
          "start": 12036,
          "end": 12042,
          "loc": {
            "start": {
              "line": 337,
              "column": 0
            },
            "end": {
              "line": 337,
              "column": 6
            }
          },
          "range": [
            12036,
            12042
          ]
        }
      ]
    },
    {
      "type": "ExportNamedDeclaration",
      "start": 12043,
      "end": 12078,
      "loc": {
        "start": {
          "line": 338,
          "column": 0
        },
        "end": {
          "line": 340,
          "column": 1
        }
      },
      "declaration": {
        "type": "ClassDeclaration",
        "start": 12050,
        "end": 12078,
        "loc": {
          "start": {
            "line": 338,
            "column": 7
          },
          "end": {
            "line": 340,
            "column": 1
          }
        },
        "id": {
          "type": "Identifier",
          "start": 12056,
          "end": 12073,
          "loc": {
            "start": {
              "line": 338,
              "column": 13
            },
            "end": {
              "line": 338,
              "column": 30
            }
          },
          "name": "SketcherUnitTests",
          "leadingComments": null
        },
        "superClass": null,
        "body": {
          "type": "ClassBody",
          "start": 12074,
          "end": 12078,
          "loc": {
            "start": {
              "line": 338,
              "column": 31
            },
            "end": {
              "line": 340,
              "column": 1
            }
          },
          "body": []
        },
        "leadingComments": [
          {
            "type": "CommentLine",
            "value": "TODO",
            "start": 12036,
            "end": 12042,
            "loc": {
              "start": {
                "line": 337,
                "column": 0
              },
              "end": {
                "line": 337,
                "column": 6
              }
            },
            "range": [
              12036,
              12042
            ]
          }
        ],
        "trailingComments": []
      },
      "specifiers": [],
      "source": null,
      "leadingComments": [
        {
          "type": "CommentLine",
          "value": "TODO",
          "start": 12036,
          "end": 12042,
          "loc": {
            "start": {
              "line": 337,
              "column": 0
            },
            "end": {
              "line": 337,
              "column": 6
            }
          },
          "range": [
            12036,
            12042
          ]
        }
      ]
    },
    {
      "type": "EmptyStatement",
      "start": 12078,
      "end": 12079,
      "loc": {
        "start": {
          "line": 340,
          "column": 1
        },
        "end": {
          "line": 340,
          "column": 2
        }
      }
    },
    {
      "type": "FunctionDeclaration",
      "start": 12081,
      "end": 15107,
      "loc": {
        "start": {
          "line": 342,
          "column": 0
        },
        "end": {
          "line": 426,
          "column": 1
        }
      },
      "id": {
        "type": "Identifier",
        "start": 12096,
        "end": 12115,
        "loc": {
          "start": {
            "line": 342,
            "column": 15
          },
          "end": {
            "line": 342,
            "column": 34
          }
        },
        "name": "someAutomationStuff"
      },
      "generator": false,
      "expression": false,
      "async": true,
      "params": [
        {
          "type": "Identifier",
          "start": 12116,
          "end": 12120,
          "loc": {
            "start": {
              "line": 342,
              "column": 35
            },
            "end": {
              "line": 342,
              "column": 39
            }
          },
          "name": "auto"
        }
      ],
      "body": {
        "type": "BlockStatement",
        "start": 12122,
        "end": 15107,
        "loc": {
          "start": {
            "line": 342,
            "column": 41
          },
          "end": {
            "line": 426,
            "column": 1
          }
        },
        "body": [
          {
            "type": "VariableDeclaration",
            "start": 12128,
            "end": 12216,
            "loc": {
              "start": {
                "line": 343,
                "column": 4
              },
              "end": {
                "line": 343,
                "column": 92
              }
            },
            "declarations": [
              {
                "type": "VariableDeclarator",
                "start": 12132,
                "end": 12215,
                "loc": {
                  "start": {
                    "line": 343,
                    "column": 8
                  },
                  "end": {
                    "line": 343,
                    "column": 91
                  }
                },
                "id": {
                  "type": "Identifier",
                  "start": 12132,
                  "end": 12137,
                  "loc": {
                    "start": {
                      "line": 343,
                      "column": 8
                    },
                    "end": {
                      "line": 343,
                      "column": 13
                    }
                  },
                  "name": "line1"
                },
                "init": {
                  "type": "AwaitExpression",
                  "start": 12140,
                  "end": 12215,
                  "loc": {
                    "start": {
                      "line": 343,
                      "column": 16
                    },
                    "end": {
                      "line": 343,
                      "column": 91
                    }
                  },
                  "all": false,
                  "argument": {
                    "type": "CallExpression",
                    "start": 12146,
                    "end": 12215,
                    "loc": {
                      "start": {
                        "line": 343,
                        "column": 22
                      },
                      "end": {
                        "line": 343,
                        "column": 91
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 12146,
                      "end": 12159,
                      "loc": {
                        "start": {
                          "line": 343,
                          "column": 22
                        },
                        "end": {
                          "line": 343,
                          "column": 35
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 12146,
                        "end": 12150,
                        "loc": {
                          "start": {
                            "line": 343,
                            "column": 22
                          },
                          "end": {
                            "line": 343,
                            "column": 26
                          }
                        },
                        "name": "auto"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 12151,
                        "end": 12159,
                        "loc": {
                          "start": {
                            "line": 343,
                            "column": 27
                          },
                          "end": {
                            "line": 343,
                            "column": 35
                          }
                        },
                        "name": "drawLine"
                      },
                      "computed": false
                    },
                    "arguments": [
                      {
                        "type": "NewExpression",
                        "start": 12160,
                        "end": 12186,
                        "loc": {
                          "start": {
                            "line": 343,
                            "column": 36
                          },
                          "end": {
                            "line": 343,
                            "column": 62
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 12164,
                          "end": 12177,
                          "loc": {
                            "start": {
                              "line": 343,
                              "column": 40
                            },
                            "end": {
                              "line": 343,
                              "column": 53
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 12164,
                            "end": 12169,
                            "loc": {
                              "start": {
                                "line": 343,
                                "column": 40
                              },
                              "end": {
                                "line": 343,
                                "column": 45
                              }
                            },
                            "name": "THREE"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12170,
                            "end": 12177,
                            "loc": {
                              "start": {
                                "line": 343,
                                "column": 46
                              },
                              "end": {
                                "line": 343,
                                "column": 53
                              }
                            },
                            "name": "Vector2"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 12178,
                            "end": 12180,
                            "loc": {
                              "start": {
                                "line": 343,
                                "column": 54
                              },
                              "end": {
                                "line": 343,
                                "column": 56
                              }
                            },
                            "value": 50,
                            "rawValue": 50,
                            "raw": "50"
                          },
                          {
                            "type": "Literal",
                            "start": 12182,
                            "end": 12185,
                            "loc": {
                              "start": {
                                "line": 343,
                                "column": 58
                              },
                              "end": {
                                "line": 343,
                                "column": 61
                              }
                            },
                            "value": 100,
                            "rawValue": 100,
                            "raw": "100"
                          }
                        ]
                      },
                      {
                        "type": "NewExpression",
                        "start": 12188,
                        "end": 12214,
                        "loc": {
                          "start": {
                            "line": 343,
                            "column": 64
                          },
                          "end": {
                            "line": 343,
                            "column": 90
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 12192,
                          "end": 12205,
                          "loc": {
                            "start": {
                              "line": 343,
                              "column": 68
                            },
                            "end": {
                              "line": 343,
                              "column": 81
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 12192,
                            "end": 12197,
                            "loc": {
                              "start": {
                                "line": 343,
                                "column": 68
                              },
                              "end": {
                                "line": 343,
                                "column": 73
                              }
                            },
                            "name": "THREE"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12198,
                            "end": 12205,
                            "loc": {
                              "start": {
                                "line": 343,
                                "column": 74
                              },
                              "end": {
                                "line": 343,
                                "column": 81
                              }
                            },
                            "name": "Vector2"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 12206,
                            "end": 12209,
                            "loc": {
                              "start": {
                                "line": 343,
                                "column": 82
                              },
                              "end": {
                                "line": 343,
                                "column": 85
                              }
                            },
                            "value": 100,
                            "rawValue": 100,
                            "raw": "100"
                          },
                          {
                            "type": "Literal",
                            "start": 12211,
                            "end": 12213,
                            "loc": {
                              "start": {
                                "line": 343,
                                "column": 87
                              },
                              "end": {
                                "line": 343,
                                "column": 89
                              }
                            },
                            "value": 50,
                            "rawValue": 50,
                            "raw": "50"
                          }
                        ]
                      }
                    ]
                  }
                }
              }
            ],
            "kind": "var"
          },
          {
            "type": "VariableDeclaration",
            "start": 12221,
            "end": 12310,
            "loc": {
              "start": {
                "line": 344,
                "column": 4
              },
              "end": {
                "line": 344,
                "column": 93
              }
            },
            "declarations": [
              {
                "type": "VariableDeclarator",
                "start": 12225,
                "end": 12309,
                "loc": {
                  "start": {
                    "line": 344,
                    "column": 8
                  },
                  "end": {
                    "line": 344,
                    "column": 92
                  }
                },
                "id": {
                  "type": "Identifier",
                  "start": 12225,
                  "end": 12230,
                  "loc": {
                    "start": {
                      "line": 344,
                      "column": 8
                    },
                    "end": {
                      "line": 344,
                      "column": 13
                    }
                  },
                  "name": "line2"
                },
                "init": {
                  "type": "AwaitExpression",
                  "start": 12233,
                  "end": 12309,
                  "loc": {
                    "start": {
                      "line": 344,
                      "column": 16
                    },
                    "end": {
                      "line": 344,
                      "column": 92
                    }
                  },
                  "all": false,
                  "argument": {
                    "type": "CallExpression",
                    "start": 12239,
                    "end": 12309,
                    "loc": {
                      "start": {
                        "line": 344,
                        "column": 22
                      },
                      "end": {
                        "line": 344,
                        "column": 92
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 12239,
                      "end": 12252,
                      "loc": {
                        "start": {
                          "line": 344,
                          "column": 22
                        },
                        "end": {
                          "line": 344,
                          "column": 35
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 12239,
                        "end": 12243,
                        "loc": {
                          "start": {
                            "line": 344,
                            "column": 22
                          },
                          "end": {
                            "line": 344,
                            "column": 26
                          }
                        },
                        "name": "auto"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 12244,
                        "end": 12252,
                        "loc": {
                          "start": {
                            "line": 344,
                            "column": 27
                          },
                          "end": {
                            "line": 344,
                            "column": 35
                          }
                        },
                        "name": "drawLine"
                      },
                      "computed": false
                    },
                    "arguments": [
                      {
                        "type": "NewExpression",
                        "start": 12253,
                        "end": 12280,
                        "loc": {
                          "start": {
                            "line": 344,
                            "column": 36
                          },
                          "end": {
                            "line": 344,
                            "column": 63
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 12257,
                          "end": 12270,
                          "loc": {
                            "start": {
                              "line": 344,
                              "column": 40
                            },
                            "end": {
                              "line": 344,
                              "column": 53
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 12257,
                            "end": 12262,
                            "loc": {
                              "start": {
                                "line": 344,
                                "column": 40
                              },
                              "end": {
                                "line": 344,
                                "column": 45
                              }
                            },
                            "name": "THREE"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12263,
                            "end": 12270,
                            "loc": {
                              "start": {
                                "line": 344,
                                "column": 46
                              },
                              "end": {
                                "line": 344,
                                "column": 53
                              }
                            },
                            "name": "Vector2"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 12271,
                            "end": 12274,
                            "loc": {
                              "start": {
                                "line": 344,
                                "column": 54
                              },
                              "end": {
                                "line": 344,
                                "column": 57
                              }
                            },
                            "value": 125,
                            "rawValue": 125,
                            "raw": "125"
                          },
                          {
                            "type": "UnaryExpression",
                            "start": 12276,
                            "end": 12279,
                            "loc": {
                              "start": {
                                "line": 344,
                                "column": 59
                              },
                              "end": {
                                "line": 344,
                                "column": 62
                              }
                            },
                            "operator": "-",
                            "prefix": true,
                            "argument": {
                              "type": "Literal",
                              "start": 12277,
                              "end": 12279,
                              "loc": {
                                "start": {
                                  "line": 344,
                                  "column": 60
                                },
                                "end": {
                                  "line": 344,
                                  "column": 62
                                }
                              },
                              "value": 50,
                              "rawValue": 50,
                              "raw": "50"
                            }
                          }
                        ]
                      },
                      {
                        "type": "NewExpression",
                        "start": 12282,
                        "end": 12308,
                        "loc": {
                          "start": {
                            "line": 344,
                            "column": 65
                          },
                          "end": {
                            "line": 344,
                            "column": 91
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 12286,
                          "end": 12299,
                          "loc": {
                            "start": {
                              "line": 344,
                              "column": 69
                            },
                            "end": {
                              "line": 344,
                              "column": 82
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 12286,
                            "end": 12291,
                            "loc": {
                              "start": {
                                "line": 344,
                                "column": 69
                              },
                              "end": {
                                "line": 344,
                                "column": 74
                              }
                            },
                            "name": "THREE"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12292,
                            "end": 12299,
                            "loc": {
                              "start": {
                                "line": 344,
                                "column": 75
                              },
                              "end": {
                                "line": 344,
                                "column": 82
                              }
                            },
                            "name": "Vector2"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 12300,
                            "end": 12303,
                            "loc": {
                              "start": {
                                "line": 344,
                                "column": 83
                              },
                              "end": {
                                "line": 344,
                                "column": 86
                              }
                            },
                            "value": 125,
                            "rawValue": 125,
                            "raw": "125"
                          },
                          {
                            "type": "Literal",
                            "start": 12305,
                            "end": 12307,
                            "loc": {
                              "start": {
                                "line": 344,
                                "column": 88
                              },
                              "end": {
                                "line": 344,
                                "column": 90
                              }
                            },
                            "value": 50,
                            "rawValue": 50,
                            "raw": "50"
                          }
                        ]
                      }
                    ]
                  }
                }
              }
            ],
            "kind": "var"
          },
          {
            "type": "ExpressionStatement",
            "start": 12315,
            "end": 12600,
            "loc": {
              "start": {
                "line": 345,
                "column": 4
              },
              "end": {
                "line": 352,
                "column": 13
              }
            },
            "expression": {
              "type": "AwaitExpression",
              "start": 12315,
              "end": 12599,
              "loc": {
                "start": {
                  "line": 345,
                  "column": 4
                },
                "end": {
                  "line": 352,
                  "column": 12
                }
              },
              "all": false,
              "argument": {
                "type": "CallExpression",
                "start": 12321,
                "end": 12599,
                "loc": {
                  "start": {
                    "line": 345,
                    "column": 10
                  },
                  "end": {
                    "line": 352,
                    "column": 12
                  }
                },
                "callee": {
                  "type": "MemberExpression",
                  "start": 12321,
                  "end": 12341,
                  "loc": {
                    "start": {
                      "line": 345,
                      "column": 10
                    },
                    "end": {
                      "line": 345,
                      "column": 30
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 12321,
                    "end": 12325,
                    "loc": {
                      "start": {
                        "line": 345,
                        "column": 10
                      },
                      "end": {
                        "line": 345,
                        "column": 14
                      }
                    },
                    "name": "auto"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 12326,
                    "end": 12341,
                    "loc": {
                      "start": {
                        "line": 345,
                        "column": 15
                      },
                      "end": {
                        "line": 345,
                        "column": 30
                      }
                    },
                    "name": "dragSketchPoint"
                  },
                  "computed": false
                },
                "arguments": [
                  {
                    "type": "CallExpression",
                    "start": 12342,
                    "end": 12367,
                    "loc": {
                      "start": {
                        "line": 345,
                        "column": 31
                      },
                      "end": {
                        "line": 345,
                        "column": 56
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 12342,
                      "end": 12360,
                      "loc": {
                        "start": {
                          "line": 345,
                          "column": 31
                        },
                        "end": {
                          "line": 345,
                          "column": 49
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 12342,
                        "end": 12346,
                        "loc": {
                          "start": {
                            "line": 345,
                            "column": 31
                          },
                          "end": {
                            "line": 345,
                            "column": 35
                          }
                        },
                        "name": "auto"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 12347,
                        "end": 12360,
                        "loc": {
                          "start": {
                            "line": 345,
                            "column": 36
                          },
                          "end": {
                            "line": 345,
                            "column": 49
                          }
                        },
                        "name": "getStartPoint"
                      },
                      "computed": false
                    },
                    "arguments": [
                      {
                        "type": "Identifier",
                        "start": 12361,
                        "end": 12366,
                        "loc": {
                          "start": {
                            "line": 345,
                            "column": 50
                          },
                          "end": {
                            "line": 345,
                            "column": 55
                          }
                        },
                        "name": "line1"
                      }
                    ]
                  },
                  {
                    "type": "ArrayExpression",
                    "start": 12369,
                    "end": 12592,
                    "loc": {
                      "start": {
                        "line": 345,
                        "column": 58
                      },
                      "end": {
                        "line": 352,
                        "column": 5
                      }
                    },
                    "elements": [
                      {
                        "type": "NewExpression",
                        "start": 12379,
                        "end": 12405,
                        "loc": {
                          "start": {
                            "line": 346,
                            "column": 8
                          },
                          "end": {
                            "line": 346,
                            "column": 34
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 12383,
                          "end": 12396,
                          "loc": {
                            "start": {
                              "line": 346,
                              "column": 12
                            },
                            "end": {
                              "line": 346,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 12383,
                            "end": 12388,
                            "loc": {
                              "start": {
                                "line": 346,
                                "column": 12
                              },
                              "end": {
                                "line": 346,
                                "column": 17
                              }
                            },
                            "name": "THREE"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12389,
                            "end": 12396,
                            "loc": {
                              "start": {
                                "line": 346,
                                "column": 18
                              },
                              "end": {
                                "line": 346,
                                "column": 25
                              }
                            },
                            "name": "Vector2"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 12397,
                            "end": 12399,
                            "loc": {
                              "start": {
                                "line": 346,
                                "column": 26
                              },
                              "end": {
                                "line": 346,
                                "column": 28
                              }
                            },
                            "value": 50,
                            "rawValue": 50,
                            "raw": "50"
                          },
                          {
                            "type": "Literal",
                            "start": 12401,
                            "end": 12404,
                            "loc": {
                              "start": {
                                "line": 346,
                                "column": 30
                              },
                              "end": {
                                "line": 346,
                                "column": 33
                              }
                            },
                            "value": 100,
                            "rawValue": 100,
                            "raw": "100"
                          }
                        ]
                      },
                      {
                        "type": "NewExpression",
                        "start": 12415,
                        "end": 12441,
                        "loc": {
                          "start": {
                            "line": 347,
                            "column": 8
                          },
                          "end": {
                            "line": 347,
                            "column": 34
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 12419,
                          "end": 12432,
                          "loc": {
                            "start": {
                              "line": 347,
                              "column": 12
                            },
                            "end": {
                              "line": 347,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 12419,
                            "end": 12424,
                            "loc": {
                              "start": {
                                "line": 347,
                                "column": 12
                              },
                              "end": {
                                "line": 347,
                                "column": 17
                              }
                            },
                            "name": "THREE"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12425,
                            "end": 12432,
                            "loc": {
                              "start": {
                                "line": 347,
                                "column": 18
                              },
                              "end": {
                                "line": 347,
                                "column": 25
                              }
                            },
                            "name": "Vector2"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 12433,
                            "end": 12435,
                            "loc": {
                              "start": {
                                "line": 347,
                                "column": 26
                              },
                              "end": {
                                "line": 347,
                                "column": 28
                              }
                            },
                            "value": 60,
                            "rawValue": 60,
                            "raw": "60"
                          },
                          {
                            "type": "Literal",
                            "start": 12437,
                            "end": 12440,
                            "loc": {
                              "start": {
                                "line": 347,
                                "column": 30
                              },
                              "end": {
                                "line": 347,
                                "column": 33
                              }
                            },
                            "value": 100,
                            "rawValue": 100,
                            "raw": "100"
                          }
                        ]
                      },
                      {
                        "type": "NewExpression",
                        "start": 12451,
                        "end": 12477,
                        "loc": {
                          "start": {
                            "line": 348,
                            "column": 8
                          },
                          "end": {
                            "line": 348,
                            "column": 34
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 12455,
                          "end": 12468,
                          "loc": {
                            "start": {
                              "line": 348,
                              "column": 12
                            },
                            "end": {
                              "line": 348,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 12455,
                            "end": 12460,
                            "loc": {
                              "start": {
                                "line": 348,
                                "column": 12
                              },
                              "end": {
                                "line": 348,
                                "column": 17
                              }
                            },
                            "name": "THREE"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12461,
                            "end": 12468,
                            "loc": {
                              "start": {
                                "line": 348,
                                "column": 18
                              },
                              "end": {
                                "line": 348,
                                "column": 25
                              }
                            },
                            "name": "Vector2"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 12469,
                            "end": 12471,
                            "loc": {
                              "start": {
                                "line": 348,
                                "column": 26
                              },
                              "end": {
                                "line": 348,
                                "column": 28
                              }
                            },
                            "value": 70,
                            "rawValue": 70,
                            "raw": "70"
                          },
                          {
                            "type": "Literal",
                            "start": 12473,
                            "end": 12476,
                            "loc": {
                              "start": {
                                "line": 348,
                                "column": 30
                              },
                              "end": {
                                "line": 348,
                                "column": 33
                              }
                            },
                            "value": 100,
                            "rawValue": 100,
                            "raw": "100"
                          }
                        ]
                      },
                      {
                        "type": "NewExpression",
                        "start": 12487,
                        "end": 12513,
                        "loc": {
                          "start": {
                            "line": 349,
                            "column": 8
                          },
                          "end": {
                            "line": 349,
                            "column": 34
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 12491,
                          "end": 12504,
                          "loc": {
                            "start": {
                              "line": 349,
                              "column": 12
                            },
                            "end": {
                              "line": 349,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 12491,
                            "end": 12496,
                            "loc": {
                              "start": {
                                "line": 349,
                                "column": 12
                              },
                              "end": {
                                "line": 349,
                                "column": 17
                              }
                            },
                            "name": "THREE"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12497,
                            "end": 12504,
                            "loc": {
                              "start": {
                                "line": 349,
                                "column": 18
                              },
                              "end": {
                                "line": 349,
                                "column": 25
                              }
                            },
                            "name": "Vector2"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 12505,
                            "end": 12507,
                            "loc": {
                              "start": {
                                "line": 349,
                                "column": 26
                              },
                              "end": {
                                "line": 349,
                                "column": 28
                              }
                            },
                            "value": 80,
                            "rawValue": 80,
                            "raw": "80"
                          },
                          {
                            "type": "Literal",
                            "start": 12509,
                            "end": 12512,
                            "loc": {
                              "start": {
                                "line": 349,
                                "column": 30
                              },
                              "end": {
                                "line": 349,
                                "column": 33
                              }
                            },
                            "value": 100,
                            "rawValue": 100,
                            "raw": "100"
                          }
                        ]
                      },
                      {
                        "type": "NewExpression",
                        "start": 12523,
                        "end": 12549,
                        "loc": {
                          "start": {
                            "line": 350,
                            "column": 8
                          },
                          "end": {
                            "line": 350,
                            "column": 34
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 12527,
                          "end": 12540,
                          "loc": {
                            "start": {
                              "line": 350,
                              "column": 12
                            },
                            "end": {
                              "line": 350,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 12527,
                            "end": 12532,
                            "loc": {
                              "start": {
                                "line": 350,
                                "column": 12
                              },
                              "end": {
                                "line": 350,
                                "column": 17
                              }
                            },
                            "name": "THREE"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12533,
                            "end": 12540,
                            "loc": {
                              "start": {
                                "line": 350,
                                "column": 18
                              },
                              "end": {
                                "line": 350,
                                "column": 25
                              }
                            },
                            "name": "Vector2"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 12541,
                            "end": 12543,
                            "loc": {
                              "start": {
                                "line": 350,
                                "column": 26
                              },
                              "end": {
                                "line": 350,
                                "column": 28
                              }
                            },
                            "value": 90,
                            "rawValue": 90,
                            "raw": "90"
                          },
                          {
                            "type": "Literal",
                            "start": 12545,
                            "end": 12548,
                            "loc": {
                              "start": {
                                "line": 350,
                                "column": 30
                              },
                              "end": {
                                "line": 350,
                                "column": 33
                              }
                            },
                            "value": 100,
                            "rawValue": 100,
                            "raw": "100"
                          }
                        ]
                      },
                      {
                        "type": "NewExpression",
                        "start": 12559,
                        "end": 12586,
                        "loc": {
                          "start": {
                            "line": 351,
                            "column": 8
                          },
                          "end": {
                            "line": 351,
                            "column": 35
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 12563,
                          "end": 12576,
                          "loc": {
                            "start": {
                              "line": 351,
                              "column": 12
                            },
                            "end": {
                              "line": 351,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 12563,
                            "end": 12568,
                            "loc": {
                              "start": {
                                "line": 351,
                                "column": 12
                              },
                              "end": {
                                "line": 351,
                                "column": 17
                              }
                            },
                            "name": "THREE"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12569,
                            "end": 12576,
                            "loc": {
                              "start": {
                                "line": 351,
                                "column": 18
                              },
                              "end": {
                                "line": 351,
                                "column": 25
                              }
                            },
                            "name": "Vector2"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 12577,
                            "end": 12580,
                            "loc": {
                              "start": {
                                "line": 351,
                                "column": 26
                              },
                              "end": {
                                "line": 351,
                                "column": 29
                              }
                            },
                            "value": 100,
                            "rawValue": 100,
                            "raw": "100"
                          },
                          {
                            "type": "Literal",
                            "start": 12582,
                            "end": 12585,
                            "loc": {
                              "start": {
                                "line": 351,
                                "column": 31
                              },
                              "end": {
                                "line": 351,
                                "column": 34
                              }
                            },
                            "value": 100,
                            "rawValue": 100,
                            "raw": "100"
                          }
                        ]
                      }
                    ]
                  },
                  {
                    "type": "Literal",
                    "start": 12594,
                    "end": 12598,
                    "loc": {
                      "start": {
                        "line": 352,
                        "column": 7
                      },
                      "end": {
                        "line": 352,
                        "column": 11
                      }
                    },
                    "value": true,
                    "rawValue": true,
                    "raw": "true"
                  }
                ]
              }
            }
          },
          {
            "type": "ExpressionStatement",
            "start": 12605,
            "end": 12742,
            "loc": {
              "start": {
                "line": 353,
                "column": 4
              },
              "end": {
                "line": 356,
                "column": 13
              }
            },
            "expression": {
              "type": "AwaitExpression",
              "start": 12605,
              "end": 12741,
              "loc": {
                "start": {
                  "line": 353,
                  "column": 4
                },
                "end": {
                  "line": 356,
                  "column": 12
                }
              },
              "all": false,
              "argument": {
                "type": "CallExpression",
                "start": 12611,
                "end": 12741,
                "loc": {
                  "start": {
                    "line": 353,
                    "column": 10
                  },
                  "end": {
                    "line": 356,
                    "column": 12
                  }
                },
                "callee": {
                  "type": "MemberExpression",
                  "start": 12611,
                  "end": 12631,
                  "loc": {
                    "start": {
                      "line": 353,
                      "column": 10
                    },
                    "end": {
                      "line": 353,
                      "column": 30
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 12611,
                    "end": 12615,
                    "loc": {
                      "start": {
                        "line": 353,
                        "column": 10
                      },
                      "end": {
                        "line": 353,
                        "column": 14
                      }
                    },
                    "name": "auto"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 12616,
                    "end": 12631,
                    "loc": {
                      "start": {
                        "line": 353,
                        "column": 15
                      },
                      "end": {
                        "line": 353,
                        "column": 30
                      }
                    },
                    "name": "dragSketchPoint"
                  },
                  "computed": false
                },
                "arguments": [
                  {
                    "type": "CallExpression",
                    "start": 12632,
                    "end": 12655,
                    "loc": {
                      "start": {
                        "line": 353,
                        "column": 31
                      },
                      "end": {
                        "line": 353,
                        "column": 54
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 12632,
                      "end": 12648,
                      "loc": {
                        "start": {
                          "line": 353,
                          "column": 31
                        },
                        "end": {
                          "line": 353,
                          "column": 47
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 12632,
                        "end": 12636,
                        "loc": {
                          "start": {
                            "line": 353,
                            "column": 31
                          },
                          "end": {
                            "line": 353,
                            "column": 35
                          }
                        },
                        "name": "auto"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 12637,
                        "end": 12648,
                        "loc": {
                          "start": {
                            "line": 353,
                            "column": 36
                          },
                          "end": {
                            "line": 353,
                            "column": 47
                          }
                        },
                        "name": "getEndPoint"
                      },
                      "computed": false
                    },
                    "arguments": [
                      {
                        "type": "Identifier",
                        "start": 12649,
                        "end": 12654,
                        "loc": {
                          "start": {
                            "line": 353,
                            "column": 48
                          },
                          "end": {
                            "line": 353,
                            "column": 53
                          }
                        },
                        "name": "line2"
                      }
                    ]
                  },
                  {
                    "type": "ArrayExpression",
                    "start": 12657,
                    "end": 12734,
                    "loc": {
                      "start": {
                        "line": 353,
                        "column": 56
                      },
                      "end": {
                        "line": 356,
                        "column": 5
                      }
                    },
                    "elements": [
                      {
                        "type": "NewExpression",
                        "start": 12667,
                        "end": 12693,
                        "loc": {
                          "start": {
                            "line": 354,
                            "column": 8
                          },
                          "end": {
                            "line": 354,
                            "column": 34
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 12671,
                          "end": 12684,
                          "loc": {
                            "start": {
                              "line": 354,
                              "column": 12
                            },
                            "end": {
                              "line": 354,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 12671,
                            "end": 12676,
                            "loc": {
                              "start": {
                                "line": 354,
                                "column": 12
                              },
                              "end": {
                                "line": 354,
                                "column": 17
                              }
                            },
                            "name": "THREE"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12677,
                            "end": 12684,
                            "loc": {
                              "start": {
                                "line": 354,
                                "column": 18
                              },
                              "end": {
                                "line": 354,
                                "column": 25
                              }
                            },
                            "name": "Vector2"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 12685,
                            "end": 12688,
                            "loc": {
                              "start": {
                                "line": 354,
                                "column": 26
                              },
                              "end": {
                                "line": 354,
                                "column": 29
                              }
                            },
                            "value": 125,
                            "rawValue": 125,
                            "raw": "125"
                          },
                          {
                            "type": "Literal",
                            "start": 12690,
                            "end": 12692,
                            "loc": {
                              "start": {
                                "line": 354,
                                "column": 31
                              },
                              "end": {
                                "line": 354,
                                "column": 33
                              }
                            },
                            "value": 50,
                            "rawValue": 50,
                            "raw": "50"
                          }
                        ]
                      },
                      {
                        "type": "NewExpression",
                        "start": 12703,
                        "end": 12728,
                        "loc": {
                          "start": {
                            "line": 355,
                            "column": 8
                          },
                          "end": {
                            "line": 355,
                            "column": 33
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 12707,
                          "end": 12720,
                          "loc": {
                            "start": {
                              "line": 355,
                              "column": 12
                            },
                            "end": {
                              "line": 355,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 12707,
                            "end": 12712,
                            "loc": {
                              "start": {
                                "line": 355,
                                "column": 12
                              },
                              "end": {
                                "line": 355,
                                "column": 17
                              }
                            },
                            "name": "THREE"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12713,
                            "end": 12720,
                            "loc": {
                              "start": {
                                "line": 355,
                                "column": 18
                              },
                              "end": {
                                "line": 355,
                                "column": 25
                              }
                            },
                            "name": "Vector2"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 12721,
                            "end": 12723,
                            "loc": {
                              "start": {
                                "line": 355,
                                "column": 26
                              },
                              "end": {
                                "line": 355,
                                "column": 28
                              }
                            },
                            "value": 50,
                            "rawValue": 50,
                            "raw": "50"
                          },
                          {
                            "type": "Literal",
                            "start": 12725,
                            "end": 12727,
                            "loc": {
                              "start": {
                                "line": 355,
                                "column": 30
                              },
                              "end": {
                                "line": 355,
                                "column": 32
                              }
                            },
                            "value": 50,
                            "rawValue": 50,
                            "raw": "50"
                          }
                        ]
                      }
                    ]
                  },
                  {
                    "type": "Literal",
                    "start": 12736,
                    "end": 12740,
                    "loc": {
                      "start": {
                        "line": 356,
                        "column": 7
                      },
                      "end": {
                        "line": 356,
                        "column": 11
                      }
                    },
                    "value": true,
                    "rawValue": true,
                    "raw": "true"
                  }
                ]
              }
            }
          },
          {
            "type": "ExpressionStatement",
            "start": 12748,
            "end": 12782,
            "loc": {
              "start": {
                "line": 358,
                "column": 4
              },
              "end": {
                "line": 358,
                "column": 38
              }
            },
            "expression": {
              "type": "AwaitExpression",
              "start": 12748,
              "end": 12781,
              "loc": {
                "start": {
                  "line": 358,
                  "column": 4
                },
                "end": {
                  "line": 358,
                  "column": 37
                }
              },
              "all": false,
              "argument": {
                "type": "CallExpression",
                "start": 12754,
                "end": 12781,
                "loc": {
                  "start": {
                    "line": 358,
                    "column": 10
                  },
                  "end": {
                    "line": 358,
                    "column": 37
                  }
                },
                "callee": {
                  "type": "MemberExpression",
                  "start": 12754,
                  "end": 12769,
                  "loc": {
                    "start": {
                      "line": 358,
                      "column": 10
                    },
                    "end": {
                      "line": 358,
                      "column": 25
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 12754,
                    "end": 12758,
                    "loc": {
                      "start": {
                        "line": 358,
                        "column": 10
                      },
                      "end": {
                        "line": 358,
                        "column": 14
                      }
                    },
                    "name": "auto"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 12759,
                    "end": 12769,
                    "loc": {
                      "start": {
                        "line": 358,
                        "column": 15
                      },
                      "end": {
                        "line": 358,
                        "column": 25
                      }
                    },
                    "name": "chooseTool"
                  },
                  "computed": false
                },
                "arguments": [
                  {
                    "type": "Literal",
                    "start": 12770,
                    "end": 12780,
                    "loc": {
                      "start": {
                        "line": 358,
                        "column": 26
                      },
                      "end": {
                        "line": 358,
                        "column": 36
                      }
                    },
                    "value": "fixation",
                    "rawValue": "fixation",
                    "raw": "'fixation'"
                  }
                ]
              }
            }
          },
          {
            "type": "ExpressionStatement",
            "start": 12787,
            "end": 12835,
            "loc": {
              "start": {
                "line": 359,
                "column": 4
              },
              "end": {
                "line": 359,
                "column": 52
              }
            },
            "expression": {
              "type": "AwaitExpression",
              "start": 12787,
              "end": 12834,
              "loc": {
                "start": {
                  "line": 359,
                  "column": 4
                },
                "end": {
                  "line": 359,
                  "column": 51
                }
              },
              "all": false,
              "argument": {
                "type": "CallExpression",
                "start": 12793,
                "end": 12834,
                "loc": {
                  "start": {
                    "line": 359,
                    "column": 10
                  },
                  "end": {
                    "line": 359,
                    "column": 51
                  }
                },
                "callee": {
                  "type": "MemberExpression",
                  "start": 12793,
                  "end": 12809,
                  "loc": {
                    "start": {
                      "line": 359,
                      "column": 10
                    },
                    "end": {
                      "line": 359,
                      "column": 26
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 12793,
                    "end": 12797,
                    "loc": {
                      "start": {
                        "line": 359,
                        "column": 10
                      },
                      "end": {
                        "line": 359,
                        "column": 14
                      }
                    },
                    "name": "auto"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 12798,
                    "end": 12809,
                    "loc": {
                      "start": {
                        "line": 359,
                        "column": 15
                      },
                      "end": {
                        "line": 359,
                        "column": 26
                      }
                    },
                    "name": "clickObject"
                  },
                  "computed": false
                },
                "arguments": [
                  {
                    "type": "CallExpression",
                    "start": 12810,
                    "end": 12833,
                    "loc": {
                      "start": {
                        "line": 359,
                        "column": 27
                      },
                      "end": {
                        "line": 359,
                        "column": 50
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 12810,
                      "end": 12826,
                      "loc": {
                        "start": {
                          "line": 359,
                          "column": 27
                        },
                        "end": {
                          "line": 359,
                          "column": 43
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 12810,
                        "end": 12814,
                        "loc": {
                          "start": {
                            "line": 359,
                            "column": 27
                          },
                          "end": {
                            "line": 359,
                            "column": 31
                          }
                        },
                        "name": "auto"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 12815,
                        "end": 12826,
                        "loc": {
                          "start": {
                            "line": 359,
                            "column": 32
                          },
                          "end": {
                            "line": 359,
                            "column": 43
                          }
                        },
                        "name": "getEndPoint"
                      },
                      "computed": false
                    },
                    "arguments": [
                      {
                        "type": "Identifier",
                        "start": 12827,
                        "end": 12832,
                        "loc": {
                          "start": {
                            "line": 359,
                            "column": 44
                          },
                          "end": {
                            "line": 359,
                            "column": 49
                          }
                        },
                        "name": "line2"
                      }
                    ]
                  }
                ]
              }
            }
          },
          {
            "type": "ExpressionStatement",
            "start": 12841,
            "end": 12871,
            "loc": {
              "start": {
                "line": 361,
                "column": 4
              },
              "end": {
                "line": 361,
                "column": 34
              }
            },
            "expression": {
              "type": "AwaitExpression",
              "start": 12841,
              "end": 12870,
              "loc": {
                "start": {
                  "line": 361,
                  "column": 4
                },
                "end": {
                  "line": 361,
                  "column": 33
                }
              },
              "all": false,
              "argument": {
                "type": "CallExpression",
                "start": 12847,
                "end": 12870,
                "loc": {
                  "start": {
                    "line": 361,
                    "column": 10
                  },
                  "end": {
                    "line": 361,
                    "column": 33
                  }
                },
                "callee": {
                  "type": "MemberExpression",
                  "start": 12847,
                  "end": 12868,
                  "loc": {
                    "start": {
                      "line": 361,
                      "column": 10
                    },
                    "end": {
                      "line": 361,
                      "column": 31
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 12847,
                    "end": 12851,
                    "loc": {
                      "start": {
                        "line": 361,
                        "column": 10
                      },
                      "end": {
                        "line": 361,
                        "column": 14
                      }
                    },
                    "name": "auto"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 12852,
                    "end": 12868,
                    "loc": {
                      "start": {
                        "line": 361,
                        "column": 15
                      },
                      "end": {
                        "line": 361,
                        "column": 31
                      }
                    },
                    "name": "solveConstraints"
                  },
                  "computed": false
                },
                "arguments": []
              }
            }
          },
          {
            "type": "ExpressionStatement",
            "start": 12876,
            "end": 12982,
            "loc": {
              "start": {
                "line": 362,
                "column": 4
              },
              "end": {
                "line": 364,
                "column": 14
              }
            },
            "expression": {
              "type": "AwaitExpression",
              "start": 12876,
              "end": 12981,
              "loc": {
                "start": {
                  "line": 362,
                  "column": 4
                },
                "end": {
                  "line": 364,
                  "column": 13
                }
              },
              "all": false,
              "argument": {
                "type": "CallExpression",
                "start": 12882,
                "end": 12981,
                "loc": {
                  "start": {
                    "line": 362,
                    "column": 10
                  },
                  "end": {
                    "line": 364,
                    "column": 13
                  }
                },
                "callee": {
                  "type": "MemberExpression",
                  "start": 12882,
                  "end": 12902,
                  "loc": {
                    "start": {
                      "line": 362,
                      "column": 10
                    },
                    "end": {
                      "line": 362,
                      "column": 30
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 12882,
                    "end": 12886,
                    "loc": {
                      "start": {
                        "line": 362,
                        "column": 10
                      },
                      "end": {
                        "line": 362,
                        "column": 14
                      }
                    },
                    "name": "auto"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 12887,
                    "end": 12902,
                    "loc": {
                      "start": {
                        "line": 362,
                        "column": 15
                      },
                      "end": {
                        "line": 362,
                        "column": 30
                      }
                    },
                    "name": "dragSketchPoint"
                  },
                  "computed": false
                },
                "arguments": [
                  {
                    "type": "CallExpression",
                    "start": 12903,
                    "end": 12926,
                    "loc": {
                      "start": {
                        "line": 362,
                        "column": 31
                      },
                      "end": {
                        "line": 362,
                        "column": 54
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 12903,
                      "end": 12919,
                      "loc": {
                        "start": {
                          "line": 362,
                          "column": 31
                        },
                        "end": {
                          "line": 362,
                          "column": 47
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 12903,
                        "end": 12907,
                        "loc": {
                          "start": {
                            "line": 362,
                            "column": 31
                          },
                          "end": {
                            "line": 362,
                            "column": 35
                          }
                        },
                        "name": "auto"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 12908,
                        "end": 12919,
                        "loc": {
                          "start": {
                            "line": 362,
                            "column": 36
                          },
                          "end": {
                            "line": 362,
                            "column": 47
                          }
                        },
                        "name": "getEndPoint"
                      },
                      "computed": false
                    },
                    "arguments": [
                      {
                        "type": "Identifier",
                        "start": 12920,
                        "end": 12925,
                        "loc": {
                          "start": {
                            "line": 362,
                            "column": 48
                          },
                          "end": {
                            "line": 362,
                            "column": 53
                          }
                        },
                        "name": "line2"
                      }
                    ]
                  },
                  {
                    "type": "ArrayExpression",
                    "start": 12928,
                    "end": 12973,
                    "loc": {
                      "start": {
                        "line": 362,
                        "column": 56
                      },
                      "end": {
                        "line": 364,
                        "column": 5
                      }
                    },
                    "elements": [
                      {
                        "type": "NewExpression",
                        "start": 12938,
                        "end": 12967,
                        "loc": {
                          "start": {
                            "line": 363,
                            "column": 8
                          },
                          "end": {
                            "line": 363,
                            "column": 37
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 12942,
                          "end": 12955,
                          "loc": {
                            "start": {
                              "line": 363,
                              "column": 12
                            },
                            "end": {
                              "line": 363,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 12942,
                            "end": 12947,
                            "loc": {
                              "start": {
                                "line": 363,
                                "column": 12
                              },
                              "end": {
                                "line": 363,
                                "column": 17
                              }
                            },
                            "name": "THREE"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12948,
                            "end": 12955,
                            "loc": {
                              "start": {
                                "line": 363,
                                "column": 18
                              },
                              "end": {
                                "line": 363,
                                "column": 25
                              }
                            },
                            "name": "Vector2"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "UnaryExpression",
                            "start": 12956,
                            "end": 12960,
                            "loc": {
                              "start": {
                                "line": 363,
                                "column": 26
                              },
                              "end": {
                                "line": 363,
                                "column": 30
                              }
                            },
                            "operator": "-",
                            "prefix": true,
                            "argument": {
                              "type": "Literal",
                              "start": 12957,
                              "end": 12960,
                              "loc": {
                                "start": {
                                  "line": 363,
                                  "column": 27
                                },
                                "end": {
                                  "line": 363,
                                  "column": 30
                                }
                              },
                              "value": 100,
                              "rawValue": 100,
                              "raw": "100"
                            }
                          },
                          {
                            "type": "UnaryExpression",
                            "start": 12962,
                            "end": 12966,
                            "loc": {
                              "start": {
                                "line": 363,
                                "column": 32
                              },
                              "end": {
                                "line": 363,
                                "column": 36
                              }
                            },
                            "operator": "-",
                            "prefix": true,
                            "argument": {
                              "type": "Literal",
                              "start": 12963,
                              "end": 12966,
                              "loc": {
                                "start": {
                                  "line": 363,
                                  "column": 33
                                },
                                "end": {
                                  "line": 363,
                                  "column": 36
                                }
                              },
                              "value": 100,
                              "rawValue": 100,
                              "raw": "100"
                            }
                          }
                        ]
                      }
                    ]
                  },
                  {
                    "type": "Literal",
                    "start": 12975,
                    "end": 12980,
                    "loc": {
                      "start": {
                        "line": 364,
                        "column": 7
                      },
                      "end": {
                        "line": 364,
                        "column": 12
                      }
                    },
                    "value": false,
                    "rawValue": false,
                    "raw": "false"
                  }
                ]
              }
            }
          },
          {
            "type": "ExpressionStatement",
            "start": 12988,
            "end": 13069,
            "loc": {
              "start": {
                "line": 366,
                "column": 4
              },
              "end": {
                "line": 368,
                "column": 7
              }
            },
            "expression": {
              "type": "AwaitExpression",
              "start": 12988,
              "end": 13068,
              "loc": {
                "start": {
                  "line": 366,
                  "column": 4
                },
                "end": {
                  "line": 368,
                  "column": 6
                }
              },
              "all": false,
              "argument": {
                "type": "CallExpression",
                "start": 12994,
                "end": 13068,
                "loc": {
                  "start": {
                    "line": 366,
                    "column": 10
                  },
                  "end": {
                    "line": 368,
                    "column": 6
                  }
                },
                "callee": {
                  "type": "MemberExpression",
                  "start": 12994,
                  "end": 13013,
                  "loc": {
                    "start": {
                      "line": 366,
                      "column": 10
                    },
                    "end": {
                      "line": 366,
                      "column": 29
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 12994,
                    "end": 12998,
                    "loc": {
                      "start": {
                        "line": 366,
                        "column": 10
                      },
                      "end": {
                        "line": 366,
                        "column": 14
                      }
                    },
                    "name": "auto"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 12999,
                    "end": 13013,
                    "loc": {
                      "start": {
                        "line": 366,
                        "column": 15
                      },
                      "end": {
                        "line": 366,
                        "column": 29
                      }
                    },
                    "name": "dragSketchLine"
                  },
                  "computed": false
                },
                "arguments": [
                  {
                    "type": "Identifier",
                    "start": 13014,
                    "end": 13019,
                    "loc": {
                      "start": {
                        "line": 366,
                        "column": 30
                      },
                      "end": {
                        "line": 366,
                        "column": 35
                      }
                    },
                    "name": "line2"
                  },
                  {
                    "type": "ArrayExpression",
                    "start": 13021,
                    "end": 13067,
                    "loc": {
                      "start": {
                        "line": 366,
                        "column": 37
                      },
                      "end": {
                        "line": 368,
                        "column": 5
                      }
                    },
                    "elements": [
                      {
                        "type": "NewExpression",
                        "start": 13031,
                        "end": 13060,
                        "loc": {
                          "start": {
                            "line": 367,
                            "column": 8
                          },
                          "end": {
                            "line": 367,
                            "column": 37
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 13035,
                          "end": 13048,
                          "loc": {
                            "start": {
                              "line": 367,
                              "column": 12
                            },
                            "end": {
                              "line": 367,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 13035,
                            "end": 13040,
                            "loc": {
                              "start": {
                                "line": 367,
                                "column": 12
                              },
                              "end": {
                                "line": 367,
                                "column": 17
                              }
                            },
                            "name": "THREE"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13041,
                            "end": 13048,
                            "loc": {
                              "start": {
                                "line": 367,
                                "column": 18
                              },
                              "end": {
                                "line": 367,
                                "column": 25
                              }
                            },
                            "name": "Vector2"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "UnaryExpression",
                            "start": 13049,
                            "end": 13053,
                            "loc": {
                              "start": {
                                "line": 367,
                                "column": 26
                              },
                              "end": {
                                "line": 367,
                                "column": 30
                              }
                            },
                            "operator": "-",
                            "prefix": true,
                            "argument": {
                              "type": "Literal",
                              "start": 13050,
                              "end": 13053,
                              "loc": {
                                "start": {
                                  "line": 367,
                                  "column": 27
                                },
                                "end": {
                                  "line": 367,
                                  "column": 30
                                }
                              },
                              "value": 100,
                              "rawValue": 100,
                              "raw": "100"
                            }
                          },
                          {
                            "type": "UnaryExpression",
                            "start": 13055,
                            "end": 13059,
                            "loc": {
                              "start": {
                                "line": 367,
                                "column": 32
                              },
                              "end": {
                                "line": 367,
                                "column": 36
                              }
                            },
                            "operator": "-",
                            "prefix": true,
                            "argument": {
                              "type": "Literal",
                              "start": 13056,
                              "end": 13059,
                              "loc": {
                                "start": {
                                  "line": 367,
                                  "column": 33
                                },
                                "end": {
                                  "line": 367,
                                  "column": 36
                                }
                              },
                              "value": 100,
                              "rawValue": 100,
                              "raw": "100"
                            }
                          }
                        ]
                      }
                    ]
                  }
                ]
              }
            }
          },
          {
            "type": "ExpressionStatement",
            "start": 13075,
            "end": 13109,
            "loc": {
              "start": {
                "line": 370,
                "column": 4
              },
              "end": {
                "line": 370,
                "column": 38
              }
            },
            "expression": {
              "type": "AwaitExpression",
              "start": 13075,
              "end": 13108,
              "loc": {
                "start": {
                  "line": 370,
                  "column": 4
                },
                "end": {
                  "line": 370,
                  "column": 37
                }
              },
              "all": false,
              "argument": {
                "type": "CallExpression",
                "start": 13081,
                "end": 13108,
                "loc": {
                  "start": {
                    "line": 370,
                    "column": 10
                  },
                  "end": {
                    "line": 370,
                    "column": 37
                  }
                },
                "callee": {
                  "type": "MemberExpression",
                  "start": 13081,
                  "end": 13096,
                  "loc": {
                    "start": {
                      "line": 370,
                      "column": 10
                    },
                    "end": {
                      "line": 370,
                      "column": 25
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 13081,
                    "end": 13085,
                    "loc": {
                      "start": {
                        "line": 370,
                        "column": 10
                      },
                      "end": {
                        "line": 370,
                        "column": 14
                      }
                    },
                    "name": "auto"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 13086,
                    "end": 13096,
                    "loc": {
                      "start": {
                        "line": 370,
                        "column": 15
                      },
                      "end": {
                        "line": 370,
                        "column": 25
                      }
                    },
                    "name": "chooseTool"
                  },
                  "computed": false
                },
                "arguments": [
                  {
                    "type": "Literal",
                    "start": 13097,
                    "end": 13107,
                    "loc": {
                      "start": {
                        "line": 370,
                        "column": 26
                      },
                      "end": {
                        "line": 370,
                        "column": 36
                      }
                    },
                    "value": "polyline",
                    "rawValue": "polyline",
                    "raw": "'polyline'"
                  }
                ]
              }
            }
          },
          {
            "type": "VariableDeclaration",
            "start": 13114,
            "end": 13321,
            "loc": {
              "start": {
                "line": 371,
                "column": 4
              },
              "end": {
                "line": 374,
                "column": 36
              }
            },
            "declarations": [
              {
                "type": "VariableDeclarator",
                "start": 13118,
                "end": 13320,
                "loc": {
                  "start": {
                    "line": 371,
                    "column": 8
                  },
                  "end": {
                    "line": 374,
                    "column": 35
                  }
                },
                "id": {
                  "type": "Identifier",
                  "start": 13118,
                  "end": 13122,
                  "loc": {
                    "start": {
                      "line": 371,
                      "column": 8
                    },
                    "end": {
                      "line": 371,
                      "column": 12
                    }
                  },
                  "name": "leg1"
                },
                "init": {
                  "type": "CallExpression",
                  "start": 13125,
                  "end": 13320,
                  "loc": {
                    "start": {
                      "line": 371,
                      "column": 15
                    },
                    "end": {
                      "line": 374,
                      "column": 35
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 13125,
                    "end": 13318,
                    "loc": {
                      "start": {
                        "line": 371,
                        "column": 15
                      },
                      "end": {
                        "line": 374,
                        "column": 33
                      }
                    },
                    "object": {
                      "type": "CallExpression",
                      "start": 13125,
                      "end": 13311,
                      "loc": {
                        "start": {
                          "line": 371,
                          "column": 15
                        },
                        "end": {
                          "line": 374,
                          "column": 26
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 13125,
                        "end": 13299,
                        "loc": {
                          "start": {
                            "line": 371,
                            "column": 15
                          },
                          "end": {
                            "line": 374,
                            "column": 14
                          }
                        },
                        "object": {
                          "type": "AwaitExpression",
                          "start": 13126,
                          "end": 13291,
                          "loc": {
                            "start": {
                              "line": 371,
                              "column": 16
                            },
                            "end": {
                              "line": 374,
                              "column": 6
                            }
                          },
                          "all": false,
                          "argument": {
                            "type": "CallExpression",
                            "start": 13132,
                            "end": 13291,
                            "loc": {
                              "start": {
                                "line": 371,
                                "column": 22
                              },
                              "end": {
                                "line": 374,
                                "column": 6
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 13132,
                              "end": 13147,
                              "loc": {
                                "start": {
                                  "line": 371,
                                  "column": 22
                                },
                                "end": {
                                  "line": 371,
                                  "column": 37
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 13132,
                                "end": 13136,
                                "loc": {
                                  "start": {
                                    "line": 371,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 371,
                                    "column": 26
                                  }
                                },
                                "name": "auto"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 13137,
                                "end": 13147,
                                "loc": {
                                  "start": {
                                    "line": 371,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 371,
                                    "column": 37
                                  }
                                },
                                "name": "trackAdded"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "ArrowFunctionExpression",
                                "start": 13148,
                                "end": 13290,
                                "loc": {
                                  "start": {
                                    "line": 371,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 374,
                                    "column": 5
                                  }
                                },
                                "id": null,
                                "generator": false,
                                "expression": false,
                                "async": true,
                                "params": [],
                                "body": {
                                  "type": "BlockStatement",
                                  "start": 13160,
                                  "end": 13290,
                                  "loc": {
                                    "start": {
                                      "line": 371,
                                      "column": 50
                                    },
                                    "end": {
                                      "line": 374,
                                      "column": 5
                                    }
                                  },
                                  "body": [
                                    {
                                      "type": "ExpressionStatement",
                                      "start": 13170,
                                      "end": 13222,
                                      "loc": {
                                        "start": {
                                          "line": 372,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 372,
                                          "column": 60
                                        }
                                      },
                                      "expression": {
                                        "type": "AwaitExpression",
                                        "start": 13170,
                                        "end": 13221,
                                        "loc": {
                                          "start": {
                                            "line": 372,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 372,
                                            "column": 59
                                          }
                                        },
                                        "all": false,
                                        "argument": {
                                          "type": "CallExpression",
                                          "start": 13176,
                                          "end": 13221,
                                          "loc": {
                                            "start": {
                                              "line": 372,
                                              "column": 14
                                            },
                                            "end": {
                                              "line": 372,
                                              "column": 59
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 13176,
                                            "end": 13193,
                                            "loc": {
                                              "start": {
                                                "line": 372,
                                                "column": 14
                                              },
                                              "end": {
                                                "line": 372,
                                                "column": 31
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 13176,
                                              "end": 13180,
                                              "loc": {
                                                "start": {
                                                  "line": 372,
                                                  "column": 14
                                                },
                                                "end": {
                                                  "line": 372,
                                                  "column": 18
                                                }
                                              },
                                              "name": "auto"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 13181,
                                              "end": 13193,
                                              "loc": {
                                                "start": {
                                                  "line": 372,
                                                  "column": 19
                                                },
                                                "end": {
                                                  "line": 372,
                                                  "column": 31
                                                }
                                              },
                                              "name": "mouseClickAt"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "NewExpression",
                                              "start": 13194,
                                              "end": 13220,
                                              "loc": {
                                                "start": {
                                                  "line": 372,
                                                  "column": 32
                                                },
                                                "end": {
                                                  "line": 372,
                                                  "column": 58
                                                }
                                              },
                                              "callee": {
                                                "type": "MemberExpression",
                                                "start": 13198,
                                                "end": 13211,
                                                "loc": {
                                                  "start": {
                                                    "line": 372,
                                                    "column": 36
                                                  },
                                                  "end": {
                                                    "line": 372,
                                                    "column": 49
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 13198,
                                                  "end": 13203,
                                                  "loc": {
                                                    "start": {
                                                      "line": 372,
                                                      "column": 36
                                                    },
                                                    "end": {
                                                      "line": 372,
                                                      "column": 41
                                                    }
                                                  },
                                                  "name": "THREE"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 13204,
                                                  "end": 13211,
                                                  "loc": {
                                                    "start": {
                                                      "line": 372,
                                                      "column": 42
                                                    },
                                                    "end": {
                                                      "line": 372,
                                                      "column": 49
                                                    }
                                                  },
                                                  "name": "Vector2"
                                                },
                                                "computed": false
                                              },
                                              "arguments": [
                                                {
                                                  "type": "UnaryExpression",
                                                  "start": 13212,
                                                  "end": 13216,
                                                  "loc": {
                                                    "start": {
                                                      "line": 372,
                                                      "column": 50
                                                    },
                                                    "end": {
                                                      "line": 372,
                                                      "column": 54
                                                    }
                                                  },
                                                  "operator": "-",
                                                  "prefix": true,
                                                  "argument": {
                                                    "type": "Literal",
                                                    "start": 13213,
                                                    "end": 13216,
                                                    "loc": {
                                                      "start": {
                                                        "line": 372,
                                                        "column": 51
                                                      },
                                                      "end": {
                                                        "line": 372,
                                                        "column": 54
                                                      }
                                                    },
                                                    "value": 100,
                                                    "rawValue": 100,
                                                    "raw": "100"
                                                  }
                                                },
                                                {
                                                  "type": "Literal",
                                                  "start": 13218,
                                                  "end": 13219,
                                                  "loc": {
                                                    "start": {
                                                      "line": 372,
                                                      "column": 56
                                                    },
                                                    "end": {
                                                      "line": 372,
                                                      "column": 57
                                                    }
                                                  },
                                                  "value": 0,
                                                  "rawValue": 0,
                                                  "raw": "0"
                                                }
                                              ]
                                            }
                                          ]
                                        }
                                      }
                                    },
                                    {
                                      "type": "ExpressionStatement",
                                      "start": 13231,
                                      "end": 13284,
                                      "loc": {
                                        "start": {
                                          "line": 373,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 373,
                                          "column": 61
                                        }
                                      },
                                      "expression": {
                                        "type": "AwaitExpression",
                                        "start": 13231,
                                        "end": 13283,
                                        "loc": {
                                          "start": {
                                            "line": 373,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 373,
                                            "column": 60
                                          }
                                        },
                                        "all": false,
                                        "argument": {
                                          "type": "CallExpression",
                                          "start": 13237,
                                          "end": 13283,
                                          "loc": {
                                            "start": {
                                              "line": 373,
                                              "column": 14
                                            },
                                            "end": {
                                              "line": 373,
                                              "column": 60
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 13237,
                                            "end": 13254,
                                            "loc": {
                                              "start": {
                                                "line": 373,
                                                "column": 14
                                              },
                                              "end": {
                                                "line": 373,
                                                "column": 31
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 13237,
                                              "end": 13241,
                                              "loc": {
                                                "start": {
                                                  "line": 373,
                                                  "column": 14
                                                },
                                                "end": {
                                                  "line": 373,
                                                  "column": 18
                                                }
                                              },
                                              "name": "auto"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 13242,
                                              "end": 13254,
                                              "loc": {
                                                "start": {
                                                  "line": 373,
                                                  "column": 19
                                                },
                                                "end": {
                                                  "line": 373,
                                                  "column": 31
                                                }
                                              },
                                              "name": "mouseClickAt"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "NewExpression",
                                              "start": 13255,
                                              "end": 13282,
                                              "loc": {
                                                "start": {
                                                  "line": 373,
                                                  "column": 32
                                                },
                                                "end": {
                                                  "line": 373,
                                                  "column": 59
                                                }
                                              },
                                              "callee": {
                                                "type": "MemberExpression",
                                                "start": 13259,
                                                "end": 13272,
                                                "loc": {
                                                  "start": {
                                                    "line": 373,
                                                    "column": 36
                                                  },
                                                  "end": {
                                                    "line": 373,
                                                    "column": 49
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 13259,
                                                  "end": 13264,
                                                  "loc": {
                                                    "start": {
                                                      "line": 373,
                                                      "column": 36
                                                    },
                                                    "end": {
                                                      "line": 373,
                                                      "column": 41
                                                    }
                                                  },
                                                  "name": "THREE"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 13265,
                                                  "end": 13272,
                                                  "loc": {
                                                    "start": {
                                                      "line": 373,
                                                      "column": 42
                                                    },
                                                    "end": {
                                                      "line": 373,
                                                      "column": 49
                                                    }
                                                  },
                                                  "name": "Vector2"
                                                },
                                                "computed": false
                                              },
                                              "arguments": [
                                                {
                                                  "type": "UnaryExpression",
                                                  "start": 13273,
                                                  "end": 13277,
                                                  "loc": {
                                                    "start": {
                                                      "line": 373,
                                                      "column": 50
                                                    },
                                                    "end": {
                                                      "line": 373,
                                                      "column": 54
                                                    }
                                                  },
                                                  "operator": "-",
                                                  "prefix": true,
                                                  "argument": {
                                                    "type": "Literal",
                                                    "start": 13274,
                                                    "end": 13277,
                                                    "loc": {
                                                      "start": {
                                                        "line": 373,
                                                        "column": 51
                                                      },
                                                      "end": {
                                                        "line": 373,
                                                        "column": 54
                                                      }
                                                    },
                                                    "value": 100,
                                                    "rawValue": 100,
                                                    "raw": "100"
                                                  }
                                                },
                                                {
                                                  "type": "Literal",
                                                  "start": 13279,
                                                  "end": 13281,
                                                  "loc": {
                                                    "start": {
                                                      "line": 373,
                                                      "column": 56
                                                    },
                                                    "end": {
                                                      "line": 373,
                                                      "column": 58
                                                    }
                                                  },
                                                  "value": 50,
                                                  "rawValue": 50,
                                                  "raw": "50"
                                                }
                                              ]
                                            }
                                          ]
                                        }
                                      }
                                    }
                                  ]
                                }
                              }
                            ]
                          },
                          "parenthesizedExpression": true
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 13293,
                          "end": 13299,
                          "loc": {
                            "start": {
                              "line": 374,
                              "column": 8
                            },
                            "end": {
                              "line": 374,
                              "column": 14
                            }
                          },
                          "name": "ofType"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "Identifier",
                          "start": 13300,
                          "end": 13310,
                          "loc": {
                            "start": {
                              "line": 374,
                              "column": 15
                            },
                            "end": {
                              "line": 374,
                              "column": 25
                            }
                          },
                          "name": "SketchLine"
                        }
                      ]
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 13312,
                      "end": 13318,
                      "loc": {
                        "start": {
                          "line": 374,
                          "column": 27
                        },
                        "end": {
                          "line": 374,
                          "column": 33
                        }
                      },
                      "name": "single"
                    },
                    "computed": false
                  },
                  "arguments": []
                }
              }
            ],
            "kind": "var"
          },
          {
            "type": "ExpressionStatement",
            "start": 13326,
            "end": 13362,
            "loc": {
              "start": {
                "line": 375,
                "column": 4
              },
              "end": {
                "line": 375,
                "column": 40
              }
            },
            "expression": {
              "type": "AwaitExpression",
              "start": 13326,
              "end": 13361,
              "loc": {
                "start": {
                  "line": 375,
                  "column": 4
                },
                "end": {
                  "line": 375,
                  "column": 39
                }
              },
              "all": false,
              "argument": {
                "type": "CallExpression",
                "start": 13332,
                "end": 13361,
                "loc": {
                  "start": {
                    "line": 375,
                    "column": 10
                  },
                  "end": {
                    "line": 375,
                    "column": 39
                  }
                },
                "callee": {
                  "type": "MemberExpression",
                  "start": 13332,
                  "end": 13347,
                  "loc": {
                    "start": {
                      "line": 375,
                      "column": 10
                    },
                    "end": {
                      "line": 375,
                      "column": 25
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 13332,
                    "end": 13336,
                    "loc": {
                      "start": {
                        "line": 375,
                        "column": 10
                      },
                      "end": {
                        "line": 375,
                        "column": 14
                      }
                    },
                    "name": "auto"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 13337,
                    "end": 13347,
                    "loc": {
                      "start": {
                        "line": 375,
                        "column": 15
                      },
                      "end": {
                        "line": 375,
                        "column": 25
                      }
                    },
                    "name": "chooseTool"
                  },
                  "computed": false
                },
                "arguments": [
                  {
                    "type": "Literal",
                    "start": 13348,
                    "end": 13360,
                    "loc": {
                      "start": {
                        "line": 375,
                        "column": 26
                      },
                      "end": {
                        "line": 375,
                        "column": 38
                      }
                    },
                    "value": "arcTangent",
                    "rawValue": "arcTangent",
                    "raw": "'arcTangent'"
                  }
                ]
              }
            }
          },
          {
            "type": "VariableDeclaration",
            "start": 13367,
            "end": 13511,
            "loc": {
              "start": {
                "line": 376,
                "column": 4
              },
              "end": {
                "line": 378,
                "column": 35
              }
            },
            "declarations": [
              {
                "type": "VariableDeclarator",
                "start": 13371,
                "end": 13510,
                "loc": {
                  "start": {
                    "line": 376,
                    "column": 8
                  },
                  "end": {
                    "line": 378,
                    "column": 34
                  }
                },
                "id": {
                  "type": "Identifier",
                  "start": 13371,
                  "end": 13374,
                  "loc": {
                    "start": {
                      "line": 376,
                      "column": 8
                    },
                    "end": {
                      "line": 376,
                      "column": 11
                    }
                  },
                  "name": "arc"
                },
                "init": {
                  "type": "CallExpression",
                  "start": 13377,
                  "end": 13510,
                  "loc": {
                    "start": {
                      "line": 376,
                      "column": 14
                    },
                    "end": {
                      "line": 378,
                      "column": 34
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 13377,
                    "end": 13508,
                    "loc": {
                      "start": {
                        "line": 376,
                        "column": 14
                      },
                      "end": {
                        "line": 378,
                        "column": 32
                      }
                    },
                    "object": {
                      "type": "CallExpression",
                      "start": 13377,
                      "end": 13501,
                      "loc": {
                        "start": {
                          "line": 376,
                          "column": 14
                        },
                        "end": {
                          "line": 378,
                          "column": 25
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 13377,
                        "end": 13490,
                        "loc": {
                          "start": {
                            "line": 376,
                            "column": 14
                          },
                          "end": {
                            "line": 378,
                            "column": 14
                          }
                        },
                        "object": {
                          "type": "AwaitExpression",
                          "start": 13378,
                          "end": 13482,
                          "loc": {
                            "start": {
                              "line": 376,
                              "column": 15
                            },
                            "end": {
                              "line": 378,
                              "column": 6
                            }
                          },
                          "all": false,
                          "argument": {
                            "type": "CallExpression",
                            "start": 13384,
                            "end": 13482,
                            "loc": {
                              "start": {
                                "line": 376,
                                "column": 21
                              },
                              "end": {
                                "line": 378,
                                "column": 6
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 13384,
                              "end": 13399,
                              "loc": {
                                "start": {
                                  "line": 376,
                                  "column": 21
                                },
                                "end": {
                                  "line": 376,
                                  "column": 36
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 13384,
                                "end": 13388,
                                "loc": {
                                  "start": {
                                    "line": 376,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 376,
                                    "column": 25
                                  }
                                },
                                "name": "auto"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 13389,
                                "end": 13399,
                                "loc": {
                                  "start": {
                                    "line": 376,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 376,
                                    "column": 36
                                  }
                                },
                                "name": "trackAdded"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "ArrowFunctionExpression",
                                "start": 13400,
                                "end": 13481,
                                "loc": {
                                  "start": {
                                    "line": 376,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 378,
                                    "column": 5
                                  }
                                },
                                "id": null,
                                "generator": false,
                                "expression": false,
                                "async": true,
                                "params": [],
                                "body": {
                                  "type": "BlockStatement",
                                  "start": 13412,
                                  "end": 13481,
                                  "loc": {
                                    "start": {
                                      "line": 376,
                                      "column": 49
                                    },
                                    "end": {
                                      "line": 378,
                                      "column": 5
                                    }
                                  },
                                  "body": [
                                    {
                                      "type": "ExpressionStatement",
                                      "start": 13422,
                                      "end": 13475,
                                      "loc": {
                                        "start": {
                                          "line": 377,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 377,
                                          "column": 61
                                        }
                                      },
                                      "expression": {
                                        "type": "AwaitExpression",
                                        "start": 13422,
                                        "end": 13474,
                                        "loc": {
                                          "start": {
                                            "line": 377,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 377,
                                            "column": 60
                                          }
                                        },
                                        "all": false,
                                        "argument": {
                                          "type": "CallExpression",
                                          "start": 13428,
                                          "end": 13474,
                                          "loc": {
                                            "start": {
                                              "line": 377,
                                              "column": 14
                                            },
                                            "end": {
                                              "line": 377,
                                              "column": 60
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 13428,
                                            "end": 13445,
                                            "loc": {
                                              "start": {
                                                "line": 377,
                                                "column": 14
                                              },
                                              "end": {
                                                "line": 377,
                                                "column": 31
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 13428,
                                              "end": 13432,
                                              "loc": {
                                                "start": {
                                                  "line": 377,
                                                  "column": 14
                                                },
                                                "end": {
                                                  "line": 377,
                                                  "column": 18
                                                }
                                              },
                                              "name": "auto"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 13433,
                                              "end": 13445,
                                              "loc": {
                                                "start": {
                                                  "line": 377,
                                                  "column": 19
                                                },
                                                "end": {
                                                  "line": 377,
                                                  "column": 31
                                                }
                                              },
                                              "name": "mouseClickAt"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "NewExpression",
                                              "start": 13446,
                                              "end": 13473,
                                              "loc": {
                                                "start": {
                                                  "line": 377,
                                                  "column": 32
                                                },
                                                "end": {
                                                  "line": 377,
                                                  "column": 59
                                                }
                                              },
                                              "callee": {
                                                "type": "MemberExpression",
                                                "start": 13450,
                                                "end": 13463,
                                                "loc": {
                                                  "start": {
                                                    "line": 377,
                                                    "column": 36
                                                  },
                                                  "end": {
                                                    "line": 377,
                                                    "column": 49
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 13450,
                                                  "end": 13455,
                                                  "loc": {
                                                    "start": {
                                                      "line": 377,
                                                      "column": 36
                                                    },
                                                    "end": {
                                                      "line": 377,
                                                      "column": 41
                                                    }
                                                  },
                                                  "name": "THREE"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 13456,
                                                  "end": 13463,
                                                  "loc": {
                                                    "start": {
                                                      "line": 377,
                                                      "column": 42
                                                    },
                                                    "end": {
                                                      "line": 377,
                                                      "column": 49
                                                    }
                                                  },
                                                  "name": "Vector2"
                                                },
                                                "computed": false
                                              },
                                              "arguments": [
                                                {
                                                  "type": "UnaryExpression",
                                                  "start": 13464,
                                                  "end": 13467,
                                                  "loc": {
                                                    "start": {
                                                      "line": 377,
                                                      "column": 50
                                                    },
                                                    "end": {
                                                      "line": 377,
                                                      "column": 53
                                                    }
                                                  },
                                                  "operator": "-",
                                                  "prefix": true,
                                                  "argument": {
                                                    "type": "Literal",
                                                    "start": 13465,
                                                    "end": 13467,
                                                    "loc": {
                                                      "start": {
                                                        "line": 377,
                                                        "column": 51
                                                      },
                                                      "end": {
                                                        "line": 377,
                                                        "column": 53
                                                      }
                                                    },
                                                    "value": 50,
                                                    "rawValue": 50,
                                                    "raw": "50"
                                                  }
                                                },
                                                {
                                                  "type": "Literal",
                                                  "start": 13469,
                                                  "end": 13472,
                                                  "loc": {
                                                    "start": {
                                                      "line": 377,
                                                      "column": 55
                                                    },
                                                    "end": {
                                                      "line": 377,
                                                      "column": 58
                                                    }
                                                  },
                                                  "value": 100,
                                                  "rawValue": 100,
                                                  "raw": "100"
                                                }
                                              ]
                                            }
                                          ]
                                        }
                                      }
                                    }
                                  ]
                                }
                              }
                            ]
                          },
                          "parenthesizedExpression": true
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 13484,
                          "end": 13490,
                          "loc": {
                            "start": {
                              "line": 378,
                              "column": 8
                            },
                            "end": {
                              "line": 378,
                              "column": 14
                            }
                          },
                          "name": "ofType"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "Identifier",
                          "start": 13491,
                          "end": 13500,
                          "loc": {
                            "start": {
                              "line": 378,
                              "column": 15
                            },
                            "end": {
                              "line": 378,
                              "column": 24
                            }
                          },
                          "name": "SketchArc"
                        }
                      ]
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 13502,
                      "end": 13508,
                      "loc": {
                        "start": {
                          "line": 378,
                          "column": 26
                        },
                        "end": {
                          "line": 378,
                          "column": 32
                        }
                      },
                      "name": "single"
                    },
                    "computed": false
                  },
                  "arguments": []
                }
              }
            ],
            "kind": "var"
          },
          {
            "type": "VariableDeclaration",
            "start": 13516,
            "end": 13660,
            "loc": {
              "start": {
                "line": 379,
                "column": 4
              },
              "end": {
                "line": 381,
                "column": 36
              }
            },
            "declarations": [
              {
                "type": "VariableDeclarator",
                "start": 13520,
                "end": 13659,
                "loc": {
                  "start": {
                    "line": 379,
                    "column": 8
                  },
                  "end": {
                    "line": 381,
                    "column": 35
                  }
                },
                "id": {
                  "type": "Identifier",
                  "start": 13520,
                  "end": 13524,
                  "loc": {
                    "start": {
                      "line": 379,
                      "column": 8
                    },
                    "end": {
                      "line": 379,
                      "column": 12
                    }
                  },
                  "name": "leg2"
                },
                "init": {
                  "type": "CallExpression",
                  "start": 13527,
                  "end": 13659,
                  "loc": {
                    "start": {
                      "line": 379,
                      "column": 15
                    },
                    "end": {
                      "line": 381,
                      "column": 35
                    }
                  },
                  "callee": {
                    "type": "MemberExpression",
                    "start": 13527,
                    "end": 13657,
                    "loc": {
                      "start": {
                        "line": 379,
                        "column": 15
                      },
                      "end": {
                        "line": 381,
                        "column": 33
                      }
                    },
                    "object": {
                      "type": "CallExpression",
                      "start": 13527,
                      "end": 13650,
                      "loc": {
                        "start": {
                          "line": 379,
                          "column": 15
                        },
                        "end": {
                          "line": 381,
                          "column": 26
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 13527,
                        "end": 13638,
                        "loc": {
                          "start": {
                            "line": 379,
                            "column": 15
                          },
                          "end": {
                            "line": 381,
                            "column": 14
                          }
                        },
                        "object": {
                          "type": "AwaitExpression",
                          "start": 13528,
                          "end": 13630,
                          "loc": {
                            "start": {
                              "line": 379,
                              "column": 16
                            },
                            "end": {
                              "line": 381,
                              "column": 6
                            }
                          },
                          "all": false,
                          "argument": {
                            "type": "CallExpression",
                            "start": 13534,
                            "end": 13630,
                            "loc": {
                              "start": {
                                "line": 379,
                                "column": 22
                              },
                              "end": {
                                "line": 381,
                                "column": 6
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 13534,
                              "end": 13549,
                              "loc": {
                                "start": {
                                  "line": 379,
                                  "column": 22
                                },
                                "end": {
                                  "line": 379,
                                  "column": 37
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 13534,
                                "end": 13538,
                                "loc": {
                                  "start": {
                                    "line": 379,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 379,
                                    "column": 26
                                  }
                                },
                                "name": "auto"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 13539,
                                "end": 13549,
                                "loc": {
                                  "start": {
                                    "line": 379,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 379,
                                    "column": 37
                                  }
                                },
                                "name": "trackAdded"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "ArrowFunctionExpression",
                                "start": 13550,
                                "end": 13629,
                                "loc": {
                                  "start": {
                                    "line": 379,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 381,
                                    "column": 5
                                  }
                                },
                                "id": null,
                                "generator": false,
                                "expression": false,
                                "async": true,
                                "params": [],
                                "body": {
                                  "type": "BlockStatement",
                                  "start": 13562,
                                  "end": 13629,
                                  "loc": {
                                    "start": {
                                      "line": 379,
                                      "column": 50
                                    },
                                    "end": {
                                      "line": 381,
                                      "column": 5
                                    }
                                  },
                                  "body": [
                                    {
                                      "type": "ExpressionStatement",
                                      "start": 13572,
                                      "end": 13623,
                                      "loc": {
                                        "start": {
                                          "line": 380,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 380,
                                          "column": 59
                                        }
                                      },
                                      "expression": {
                                        "type": "AwaitExpression",
                                        "start": 13572,
                                        "end": 13622,
                                        "loc": {
                                          "start": {
                                            "line": 380,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 380,
                                            "column": 58
                                          }
                                        },
                                        "all": false,
                                        "argument": {
                                          "type": "CallExpression",
                                          "start": 13578,
                                          "end": 13622,
                                          "loc": {
                                            "start": {
                                              "line": 380,
                                              "column": 14
                                            },
                                            "end": {
                                              "line": 380,
                                              "column": 58
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 13578,
                                            "end": 13595,
                                            "loc": {
                                              "start": {
                                                "line": 380,
                                                "column": 14
                                              },
                                              "end": {
                                                "line": 380,
                                                "column": 31
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 13578,
                                              "end": 13582,
                                              "loc": {
                                                "start": {
                                                  "line": 380,
                                                  "column": 14
                                                },
                                                "end": {
                                                  "line": 380,
                                                  "column": 18
                                                }
                                              },
                                              "name": "auto"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 13583,
                                              "end": 13595,
                                              "loc": {
                                                "start": {
                                                  "line": 380,
                                                  "column": 19
                                                },
                                                "end": {
                                                  "line": 380,
                                                  "column": 31
                                                }
                                              },
                                              "name": "mouseClickAt"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "NewExpression",
                                              "start": 13596,
                                              "end": 13621,
                                              "loc": {
                                                "start": {
                                                  "line": 380,
                                                  "column": 32
                                                },
                                                "end": {
                                                  "line": 380,
                                                  "column": 57
                                                }
                                              },
                                              "callee": {
                                                "type": "MemberExpression",
                                                "start": 13600,
                                                "end": 13613,
                                                "loc": {
                                                  "start": {
                                                    "line": 380,
                                                    "column": 36
                                                  },
                                                  "end": {
                                                    "line": 380,
                                                    "column": 49
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 13600,
                                                  "end": 13605,
                                                  "loc": {
                                                    "start": {
                                                      "line": 380,
                                                      "column": 36
                                                    },
                                                    "end": {
                                                      "line": 380,
                                                      "column": 41
                                                    }
                                                  },
                                                  "name": "THREE"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 13606,
                                                  "end": 13613,
                                                  "loc": {
                                                    "start": {
                                                      "line": 380,
                                                      "column": 42
                                                    },
                                                    "end": {
                                                      "line": 380,
                                                      "column": 49
                                                    }
                                                  },
                                                  "name": "Vector2"
                                                },
                                                "computed": false
                                              },
                                              "arguments": [
                                                {
                                                  "type": "Literal",
                                                  "start": 13614,
                                                  "end": 13615,
                                                  "loc": {
                                                    "start": {
                                                      "line": 380,
                                                      "column": 50
                                                    },
                                                    "end": {
                                                      "line": 380,
                                                      "column": 51
                                                    }
                                                  },
                                                  "value": 0,
                                                  "rawValue": 0,
                                                  "raw": "0"
                                                },
                                                {
                                                  "type": "Literal",
                                                  "start": 13617,
                                                  "end": 13620,
                                                  "loc": {
                                                    "start": {
                                                      "line": 380,
                                                      "column": 53
                                                    },
                                                    "end": {
                                                      "line": 380,
                                                      "column": 56
                                                    }
                                                  },
                                                  "value": 100,
                                                  "rawValue": 100,
                                                  "raw": "100"
                                                }
                                              ]
                                            }
                                          ]
                                        }
                                      }
                                    }
                                  ]
                                }
                              }
                            ]
                          },
                          "parenthesizedExpression": true
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 13632,
                          "end": 13638,
                          "loc": {
                            "start": {
                              "line": 381,
                              "column": 8
                            },
                            "end": {
                              "line": 381,
                              "column": 14
                            }
                          },
                          "name": "ofType"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "Identifier",
                          "start": 13639,
                          "end": 13649,
                          "loc": {
                            "start": {
                              "line": 381,
                              "column": 15
                            },
                            "end": {
                              "line": 381,
                              "column": 25
                            }
                          },
                          "name": "SketchLine"
                        }
                      ]
                    },
                    "property": {
                      "type": "Identifier",
                      "start": 13651,
                      "end": 13657,
                      "loc": {
                        "start": {
                          "line": 381,
                          "column": 27
                        },
                        "end": {
                          "line": 381,
                          "column": 33
                        }
                      },
                      "name": "single"
                    },
                    "computed": false
                  },
                  "arguments": []
                }
              }
            ],
            "kind": "var"
          },
          {
            "type": "ExpressionStatement",
            "start": 13665,
            "end": 13696,
            "loc": {
              "start": {
                "line": 382,
                "column": 4
              },
              "end": {
                "line": 382,
                "column": 35
              }
            },
            "expression": {
              "type": "AwaitExpression",
              "start": 13665,
              "end": 13695,
              "loc": {
                "start": {
                  "line": 382,
                  "column": 4
                },
                "end": {
                  "line": 382,
                  "column": 34
                }
              },
              "all": false,
              "argument": {
                "type": "CallExpression",
                "start": 13671,
                "end": 13695,
                "loc": {
                  "start": {
                    "line": 382,
                    "column": 10
                  },
                  "end": {
                    "line": 382,
                    "column": 34
                  }
                },
                "callee": {
                  "type": "MemberExpression",
                  "start": 13671,
                  "end": 13686,
                  "loc": {
                    "start": {
                      "line": 382,
                      "column": 10
                    },
                    "end": {
                      "line": 382,
                      "column": 25
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 13671,
                    "end": 13675,
                    "loc": {
                      "start": {
                        "line": 382,
                        "column": 10
                      },
                      "end": {
                        "line": 382,
                        "column": 14
                      }
                    },
                    "name": "auto"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 13676,
                    "end": 13686,
                    "loc": {
                      "start": {
                        "line": 382,
                        "column": 15
                      },
                      "end": {
                        "line": 382,
                        "column": 25
                      }
                    },
                    "name": "chooseTool"
                  },
                  "computed": false
                },
                "arguments": [
                  {
                    "type": "Literal",
                    "start": 13687,
                    "end": 13694,
                    "loc": {
                      "start": {
                        "line": 382,
                        "column": 26
                      },
                      "end": {
                        "line": 382,
                        "column": 33
                      }
                    },
                    "value": "empty",
                    "rawValue": "empty",
                    "raw": "'empty'"
                  }
                ]
              }
            }
          },
          {
            "type": "ExpressionStatement",
            "start": 13702,
            "end": 13731,
            "loc": {
              "start": {
                "line": 384,
                "column": 4
              },
              "end": {
                "line": 384,
                "column": 33
              }
            },
            "expression": {
              "type": "AwaitExpression",
              "start": 13702,
              "end": 13730,
              "loc": {
                "start": {
                  "line": 384,
                  "column": 4
                },
                "end": {
                  "line": 384,
                  "column": 32
                }
              },
              "all": false,
              "argument": {
                "type": "CallExpression",
                "start": 13708,
                "end": 13730,
                "loc": {
                  "start": {
                    "line": 384,
                    "column": 10
                  },
                  "end": {
                    "line": 384,
                    "column": 32
                  }
                },
                "callee": {
                  "type": "MemberExpression",
                  "start": 13708,
                  "end": 13724,
                  "loc": {
                    "start": {
                      "line": 384,
                      "column": 10
                    },
                    "end": {
                      "line": 384,
                      "column": 26
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 13708,
                    "end": 13712,
                    "loc": {
                      "start": {
                        "line": 384,
                        "column": 10
                      },
                      "end": {
                        "line": 384,
                        "column": 14
                      }
                    },
                    "name": "auto"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 13713,
                    "end": 13724,
                    "loc": {
                      "start": {
                        "line": 384,
                        "column": 15
                      },
                      "end": {
                        "line": 384,
                        "column": 26
                      }
                    },
                    "name": "hoverObject"
                  },
                  "computed": false
                },
                "arguments": [
                  {
                    "type": "Identifier",
                    "start": 13725,
                    "end": 13729,
                    "loc": {
                      "start": {
                        "line": 384,
                        "column": 27
                      },
                      "end": {
                        "line": 384,
                        "column": 31
                      }
                    },
                    "name": "leg1"
                  }
                ]
              }
            }
          },
          {
            "type": "ExpressionStatement",
            "start": 13736,
            "end": 13767,
            "loc": {
              "start": {
                "line": 385,
                "column": 4
              },
              "end": {
                "line": 385,
                "column": 35
              }
            },
            "expression": {
              "type": "AwaitExpression",
              "start": 13736,
              "end": 13766,
              "loc": {
                "start": {
                  "line": 385,
                  "column": 4
                },
                "end": {
                  "line": 385,
                  "column": 34
                }
              },
              "all": false,
              "argument": {
                "type": "CallExpression",
                "start": 13742,
                "end": 13766,
                "loc": {
                  "start": {
                    "line": 385,
                    "column": 10
                  },
                  "end": {
                    "line": 385,
                    "column": 34
                  }
                },
                "callee": {
                  "type": "MemberExpression",
                  "start": 13742,
                  "end": 13760,
                  "loc": {
                    "start": {
                      "line": 385,
                      "column": 10
                    },
                    "end": {
                      "line": 385,
                      "column": 28
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 13742,
                    "end": 13746,
                    "loc": {
                      "start": {
                        "line": 385,
                        "column": 10
                      },
                      "end": {
                        "line": 385,
                        "column": 14
                      }
                    },
                    "name": "auto"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 13747,
                    "end": 13760,
                    "loc": {
                      "start": {
                        "line": 385,
                        "column": 15
                      },
                      "end": {
                        "line": 385,
                        "column": 28
                      }
                    },
                    "name": "unhoverObject"
                  },
                  "computed": false
                },
                "arguments": [
                  {
                    "type": "Identifier",
                    "start": 13761,
                    "end": 13765,
                    "loc": {
                      "start": {
                        "line": 385,
                        "column": 29
                      },
                      "end": {
                        "line": 385,
                        "column": 33
                      }
                    },
                    "name": "leg1"
                  }
                ]
              }
            }
          },
          {
            "type": "ExpressionStatement",
            "start": 13772,
            "end": 13801,
            "loc": {
              "start": {
                "line": 386,
                "column": 4
              },
              "end": {
                "line": 386,
                "column": 33
              }
            },
            "expression": {
              "type": "AwaitExpression",
              "start": 13772,
              "end": 13800,
              "loc": {
                "start": {
                  "line": 386,
                  "column": 4
                },
                "end": {
                  "line": 386,
                  "column": 32
                }
              },
              "all": false,
              "argument": {
                "type": "CallExpression",
                "start": 13778,
                "end": 13800,
                "loc": {
                  "start": {
                    "line": 386,
                    "column": 10
                  },
                  "end": {
                    "line": 386,
                    "column": 32
                  }
                },
                "callee": {
                  "type": "MemberExpression",
                  "start": 13778,
                  "end": 13794,
                  "loc": {
                    "start": {
                      "line": 386,
                      "column": 10
                    },
                    "end": {
                      "line": 386,
                      "column": 26
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 13778,
                    "end": 13782,
                    "loc": {
                      "start": {
                        "line": 386,
                        "column": 10
                      },
                      "end": {
                        "line": 386,
                        "column": 14
                      }
                    },
                    "name": "auto"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 13783,
                    "end": 13794,
                    "loc": {
                      "start": {
                        "line": 386,
                        "column": 15
                      },
                      "end": {
                        "line": 386,
                        "column": 26
                      }
                    },
                    "name": "hoverObject"
                  },
                  "computed": false
                },
                "arguments": [
                  {
                    "type": "Identifier",
                    "start": 13795,
                    "end": 13799,
                    "loc": {
                      "start": {
                        "line": 386,
                        "column": 27
                      },
                      "end": {
                        "line": 386,
                        "column": 31
                      }
                    },
                    "name": "leg2"
                  }
                ]
              }
            }
          },
          {
            "type": "ExpressionStatement",
            "start": 13806,
            "end": 13837,
            "loc": {
              "start": {
                "line": 387,
                "column": 4
              },
              "end": {
                "line": 387,
                "column": 35
              }
            },
            "expression": {
              "type": "AwaitExpression",
              "start": 13806,
              "end": 13836,
              "loc": {
                "start": {
                  "line": 387,
                  "column": 4
                },
                "end": {
                  "line": 387,
                  "column": 34
                }
              },
              "all": false,
              "argument": {
                "type": "CallExpression",
                "start": 13812,
                "end": 13836,
                "loc": {
                  "start": {
                    "line": 387,
                    "column": 10
                  },
                  "end": {
                    "line": 387,
                    "column": 34
                  }
                },
                "callee": {
                  "type": "MemberExpression",
                  "start": 13812,
                  "end": 13830,
                  "loc": {
                    "start": {
                      "line": 387,
                      "column": 10
                    },
                    "end": {
                      "line": 387,
                      "column": 28
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 13812,
                    "end": 13816,
                    "loc": {
                      "start": {
                        "line": 387,
                        "column": 10
                      },
                      "end": {
                        "line": 387,
                        "column": 14
                      }
                    },
                    "name": "auto"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 13817,
                    "end": 13830,
                    "loc": {
                      "start": {
                        "line": 387,
                        "column": 15
                      },
                      "end": {
                        "line": 387,
                        "column": 28
                      }
                    },
                    "name": "unhoverObject"
                  },
                  "computed": false
                },
                "arguments": [
                  {
                    "type": "Identifier",
                    "start": 13831,
                    "end": 13835,
                    "loc": {
                      "start": {
                        "line": 387,
                        "column": 29
                      },
                      "end": {
                        "line": 387,
                        "column": 33
                      }
                    },
                    "name": "leg2"
                  }
                ]
              }
            }
          },
          {
            "type": "ExpressionStatement",
            "start": 13842,
            "end": 13870,
            "loc": {
              "start": {
                "line": 388,
                "column": 4
              },
              "end": {
                "line": 388,
                "column": 32
              }
            },
            "expression": {
              "type": "AwaitExpression",
              "start": 13842,
              "end": 13869,
              "loc": {
                "start": {
                  "line": 388,
                  "column": 4
                },
                "end": {
                  "line": 388,
                  "column": 31
                }
              },
              "all": false,
              "argument": {
                "type": "CallExpression",
                "start": 13848,
                "end": 13869,
                "loc": {
                  "start": {
                    "line": 388,
                    "column": 10
                  },
                  "end": {
                    "line": 388,
                    "column": 31
                  }
                },
                "callee": {
                  "type": "MemberExpression",
                  "start": 13848,
                  "end": 13864,
                  "loc": {
                    "start": {
                      "line": 388,
                      "column": 10
                    },
                    "end": {
                      "line": 388,
                      "column": 26
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 13848,
                    "end": 13852,
                    "loc": {
                      "start": {
                        "line": 388,
                        "column": 10
                      },
                      "end": {
                        "line": 388,
                        "column": 14
                      }
                    },
                    "name": "auto"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 13853,
                    "end": 13864,
                    "loc": {
                      "start": {
                        "line": 388,
                        "column": 15
                      },
                      "end": {
                        "line": 388,
                        "column": 26
                      }
                    },
                    "name": "hoverObject"
                  },
                  "computed": false
                },
                "arguments": [
                  {
                    "type": "Identifier",
                    "start": 13865,
                    "end": 13868,
                    "loc": {
                      "start": {
                        "line": 388,
                        "column": 27
                      },
                      "end": {
                        "line": 388,
                        "column": 30
                      }
                    },
                    "name": "arc"
                  }
                ]
              }
            }
          },
          {
            "type": "ExpressionStatement",
            "start": 13875,
            "end": 13905,
            "loc": {
              "start": {
                "line": 389,
                "column": 4
              },
              "end": {
                "line": 389,
                "column": 34
              }
            },
            "expression": {
              "type": "AwaitExpression",
              "start": 13875,
              "end": 13904,
              "loc": {
                "start": {
                  "line": 389,
                  "column": 4
                },
                "end": {
                  "line": 389,
                  "column": 33
                }
              },
              "all": false,
              "argument": {
                "type": "CallExpression",
                "start": 13881,
                "end": 13904,
                "loc": {
                  "start": {
                    "line": 389,
                    "column": 10
                  },
                  "end": {
                    "line": 389,
                    "column": 33
                  }
                },
                "callee": {
                  "type": "MemberExpression",
                  "start": 13881,
                  "end": 13899,
                  "loc": {
                    "start": {
                      "line": 389,
                      "column": 10
                    },
                    "end": {
                      "line": 389,
                      "column": 28
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 13881,
                    "end": 13885,
                    "loc": {
                      "start": {
                        "line": 389,
                        "column": 10
                      },
                      "end": {
                        "line": 389,
                        "column": 14
                      }
                    },
                    "name": "auto"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 13886,
                    "end": 13899,
                    "loc": {
                      "start": {
                        "line": 389,
                        "column": 15
                      },
                      "end": {
                        "line": 389,
                        "column": 28
                      }
                    },
                    "name": "unhoverObject"
                  },
                  "computed": false
                },
                "arguments": [
                  {
                    "type": "Identifier",
                    "start": 13900,
                    "end": 13903,
                    "loc": {
                      "start": {
                        "line": 389,
                        "column": 29
                      },
                      "end": {
                        "line": 389,
                        "column": 32
                      }
                    },
                    "name": "arc"
                  }
                ]
              }
            }
          },
          {
            "type": "ExpressionStatement",
            "start": 13911,
            "end": 14061,
            "loc": {
              "start": {
                "line": 391,
                "column": 4
              },
              "end": {
                "line": 394,
                "column": 13
              }
            },
            "expression": {
              "type": "AwaitExpression",
              "start": 13911,
              "end": 14060,
              "loc": {
                "start": {
                  "line": 391,
                  "column": 4
                },
                "end": {
                  "line": 394,
                  "column": 12
                }
              },
              "all": false,
              "argument": {
                "type": "CallExpression",
                "start": 13917,
                "end": 14060,
                "loc": {
                  "start": {
                    "line": 391,
                    "column": 10
                  },
                  "end": {
                    "line": 394,
                    "column": 12
                  }
                },
                "callee": {
                  "type": "MemberExpression",
                  "start": 13917,
                  "end": 13937,
                  "loc": {
                    "start": {
                      "line": 391,
                      "column": 10
                    },
                    "end": {
                      "line": 391,
                      "column": 30
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 13917,
                    "end": 13921,
                    "loc": {
                      "start": {
                        "line": 391,
                        "column": 10
                      },
                      "end": {
                        "line": 391,
                        "column": 14
                      }
                    },
                    "name": "auto"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 13922,
                    "end": 13937,
                    "loc": {
                      "start": {
                        "line": 391,
                        "column": 15
                      },
                      "end": {
                        "line": 391,
                        "column": 30
                      }
                    },
                    "name": "dragSketchPoint"
                  },
                  "computed": false
                },
                "arguments": [
                  {
                    "type": "CallExpression",
                    "start": 13938,
                    "end": 13962,
                    "loc": {
                      "start": {
                        "line": 391,
                        "column": 31
                      },
                      "end": {
                        "line": 391,
                        "column": 55
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 13938,
                      "end": 13957,
                      "loc": {
                        "start": {
                          "line": 391,
                          "column": 31
                        },
                        "end": {
                          "line": 391,
                          "column": 50
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 13938,
                        "end": 13942,
                        "loc": {
                          "start": {
                            "line": 391,
                            "column": 31
                          },
                          "end": {
                            "line": 391,
                            "column": 35
                          }
                        },
                        "name": "auto"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 13943,
                        "end": 13957,
                        "loc": {
                          "start": {
                            "line": 391,
                            "column": 36
                          },
                          "end": {
                            "line": 391,
                            "column": 50
                          }
                        },
                        "name": "getCenterPoint"
                      },
                      "computed": false
                    },
                    "arguments": [
                      {
                        "type": "Identifier",
                        "start": 13958,
                        "end": 13961,
                        "loc": {
                          "start": {
                            "line": 391,
                            "column": 51
                          },
                          "end": {
                            "line": 391,
                            "column": 54
                          }
                        },
                        "name": "arc"
                      }
                    ]
                  },
                  {
                    "type": "ArrayExpression",
                    "start": 13964,
                    "end": 14053,
                    "loc": {
                      "start": {
                        "line": 391,
                        "column": 57
                      },
                      "end": {
                        "line": 394,
                        "column": 5
                      }
                    },
                    "elements": [
                      {
                        "type": "CallExpression",
                        "start": 13974,
                        "end": 14011,
                        "loc": {
                          "start": {
                            "line": 392,
                            "column": 8
                          },
                          "end": {
                            "line": 392,
                            "column": 45
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 13974,
                          "end": 13985,
                          "loc": {
                            "start": {
                              "line": 392,
                              "column": 8
                            },
                            "end": {
                              "line": 392,
                              "column": 19
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 13974,
                            "end": 13978,
                            "loc": {
                              "start": {
                                "line": 392,
                                "column": 8
                              },
                              "end": {
                                "line": 392,
                                "column": 12
                              }
                            },
                            "name": "auto"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13979,
                            "end": 13985,
                            "loc": {
                              "start": {
                                "line": 392,
                                "column": 13
                              },
                              "end": {
                                "line": 392,
                                "column": 19
                              }
                            },
                            "name": "getPos"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 13986,
                            "end": 14010,
                            "loc": {
                              "start": {
                                "line": 392,
                                "column": 20
                              },
                              "end": {
                                "line": 392,
                                "column": 44
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 13986,
                              "end": 14005,
                              "loc": {
                                "start": {
                                  "line": 392,
                                  "column": 20
                                },
                                "end": {
                                  "line": 392,
                                  "column": 39
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 13986,
                                "end": 13990,
                                "loc": {
                                  "start": {
                                    "line": 392,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 392,
                                    "column": 24
                                  }
                                },
                                "name": "auto"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 13991,
                                "end": 14005,
                                "loc": {
                                  "start": {
                                    "line": 392,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 392,
                                    "column": 39
                                  }
                                },
                                "name": "getCenterPoint"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 14006,
                                "end": 14009,
                                "loc": {
                                  "start": {
                                    "line": 392,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 392,
                                    "column": 43
                                  }
                                },
                                "name": "arc"
                              }
                            ]
                          }
                        ]
                      },
                      {
                        "type": "NewExpression",
                        "start": 14021,
                        "end": 14046,
                        "loc": {
                          "start": {
                            "line": 393,
                            "column": 8
                          },
                          "end": {
                            "line": 393,
                            "column": 33
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 14025,
                          "end": 14038,
                          "loc": {
                            "start": {
                              "line": 393,
                              "column": 12
                            },
                            "end": {
                              "line": 393,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 14025,
                            "end": 14030,
                            "loc": {
                              "start": {
                                "line": 393,
                                "column": 12
                              },
                              "end": {
                                "line": 393,
                                "column": 17
                              }
                            },
                            "name": "THREE"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14031,
                            "end": 14038,
                            "loc": {
                              "start": {
                                "line": 393,
                                "column": 18
                              },
                              "end": {
                                "line": 393,
                                "column": 25
                              }
                            },
                            "name": "Vector2"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 14039,
                            "end": 14041,
                            "loc": {
                              "start": {
                                "line": 393,
                                "column": 26
                              },
                              "end": {
                                "line": 393,
                                "column": 28
                              }
                            },
                            "value": 10,
                            "rawValue": 10,
                            "raw": "10"
                          },
                          {
                            "type": "Literal",
                            "start": 14043,
                            "end": 14045,
                            "loc": {
                              "start": {
                                "line": 393,
                                "column": 30
                              },
                              "end": {
                                "line": 393,
                                "column": 32
                              }
                            },
                            "value": 30,
                            "rawValue": 30,
                            "raw": "30"
                          }
                        ]
                      }
                    ]
                  },
                  {
                    "type": "Literal",
                    "start": 14055,
                    "end": 14059,
                    "loc": {
                      "start": {
                        "line": 394,
                        "column": 7
                      },
                      "end": {
                        "line": 394,
                        "column": 11
                      }
                    },
                    "value": true,
                    "rawValue": true,
                    "raw": "true"
                  }
                ]
              }
            }
          },
          {
            "type": "ExpressionStatement",
            "start": 14067,
            "end": 14099,
            "loc": {
              "start": {
                "line": 396,
                "column": 4
              },
              "end": {
                "line": 396,
                "column": 36
              }
            },
            "expression": {
              "type": "AwaitExpression",
              "start": 14067,
              "end": 14098,
              "loc": {
                "start": {
                  "line": 396,
                  "column": 4
                },
                "end": {
                  "line": 396,
                  "column": 35
                }
              },
              "all": false,
              "argument": {
                "type": "CallExpression",
                "start": 14073,
                "end": 14098,
                "loc": {
                  "start": {
                    "line": 396,
                    "column": 10
                  },
                  "end": {
                    "line": 396,
                    "column": 35
                  }
                },
                "callee": {
                  "type": "MemberExpression",
                  "start": 14073,
                  "end": 14092,
                  "loc": {
                    "start": {
                      "line": 396,
                      "column": 10
                    },
                    "end": {
                      "line": 396,
                      "column": 29
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 14073,
                    "end": 14077,
                    "loc": {
                      "start": {
                        "line": 396,
                        "column": 10
                      },
                      "end": {
                        "line": 396,
                        "column": 14
                      }
                    },
                    "name": "auto"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 14078,
                    "end": 14092,
                    "loc": {
                      "start": {
                        "line": 396,
                        "column": 15
                      },
                      "end": {
                        "line": 396,
                        "column": 29
                      }
                    },
                    "name": "setIncremental"
                  },
                  "computed": false
                },
                "arguments": [
                  {
                    "type": "Literal",
                    "start": 14093,
                    "end": 14097,
                    "loc": {
                      "start": {
                        "line": 396,
                        "column": 30
                      },
                      "end": {
                        "line": 396,
                        "column": 34
                      }
                    },
                    "value": true,
                    "rawValue": true,
                    "raw": "true"
                  }
                ]
              }
            }
          },
          {
            "type": "ExpressionStatement",
            "start": 14104,
            "end": 14499,
            "loc": {
              "start": {
                "line": 397,
                "column": 4
              },
              "end": {
                "line": 407,
                "column": 13
              }
            },
            "expression": {
              "type": "AwaitExpression",
              "start": 14104,
              "end": 14498,
              "loc": {
                "start": {
                  "line": 397,
                  "column": 4
                },
                "end": {
                  "line": 407,
                  "column": 12
                }
              },
              "all": false,
              "argument": {
                "type": "CallExpression",
                "start": 14110,
                "end": 14498,
                "loc": {
                  "start": {
                    "line": 397,
                    "column": 10
                  },
                  "end": {
                    "line": 407,
                    "column": 12
                  }
                },
                "callee": {
                  "type": "MemberExpression",
                  "start": 14110,
                  "end": 14130,
                  "loc": {
                    "start": {
                      "line": 397,
                      "column": 10
                    },
                    "end": {
                      "line": 397,
                      "column": 30
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 14110,
                    "end": 14114,
                    "loc": {
                      "start": {
                        "line": 397,
                        "column": 10
                      },
                      "end": {
                        "line": 397,
                        "column": 14
                      }
                    },
                    "name": "auto"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 14115,
                    "end": 14130,
                    "loc": {
                      "start": {
                        "line": 397,
                        "column": 15
                      },
                      "end": {
                        "line": 397,
                        "column": 30
                      }
                    },
                    "name": "dragSketchPoint"
                  },
                  "computed": false
                },
                "arguments": [
                  {
                    "type": "CallExpression",
                    "start": 14131,
                    "end": 14155,
                    "loc": {
                      "start": {
                        "line": 397,
                        "column": 31
                      },
                      "end": {
                        "line": 397,
                        "column": 55
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 14131,
                      "end": 14150,
                      "loc": {
                        "start": {
                          "line": 397,
                          "column": 31
                        },
                        "end": {
                          "line": 397,
                          "column": 50
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 14131,
                        "end": 14135,
                        "loc": {
                          "start": {
                            "line": 397,
                            "column": 31
                          },
                          "end": {
                            "line": 397,
                            "column": 35
                          }
                        },
                        "name": "auto"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 14136,
                        "end": 14150,
                        "loc": {
                          "start": {
                            "line": 397,
                            "column": 36
                          },
                          "end": {
                            "line": 397,
                            "column": 50
                          }
                        },
                        "name": "getCenterPoint"
                      },
                      "computed": false
                    },
                    "arguments": [
                      {
                        "type": "Identifier",
                        "start": 14151,
                        "end": 14154,
                        "loc": {
                          "start": {
                            "line": 397,
                            "column": 51
                          },
                          "end": {
                            "line": 397,
                            "column": 54
                          }
                        },
                        "name": "arc"
                      }
                    ]
                  },
                  {
                    "type": "ArrayExpression",
                    "start": 14157,
                    "end": 14491,
                    "loc": {
                      "start": {
                        "line": 397,
                        "column": 57
                      },
                      "end": {
                        "line": 407,
                        "column": 5
                      }
                    },
                    "elements": [
                      {
                        "type": "CallExpression",
                        "start": 14167,
                        "end": 14204,
                        "loc": {
                          "start": {
                            "line": 398,
                            "column": 8
                          },
                          "end": {
                            "line": 398,
                            "column": 45
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 14167,
                          "end": 14178,
                          "loc": {
                            "start": {
                              "line": 398,
                              "column": 8
                            },
                            "end": {
                              "line": 398,
                              "column": 19
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 14167,
                            "end": 14171,
                            "loc": {
                              "start": {
                                "line": 398,
                                "column": 8
                              },
                              "end": {
                                "line": 398,
                                "column": 12
                              }
                            },
                            "name": "auto"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14172,
                            "end": 14178,
                            "loc": {
                              "start": {
                                "line": 398,
                                "column": 13
                              },
                              "end": {
                                "line": 398,
                                "column": 19
                              }
                            },
                            "name": "getPos"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "CallExpression",
                            "start": 14179,
                            "end": 14203,
                            "loc": {
                              "start": {
                                "line": 398,
                                "column": 20
                              },
                              "end": {
                                "line": 398,
                                "column": 44
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 14179,
                              "end": 14198,
                              "loc": {
                                "start": {
                                  "line": 398,
                                  "column": 20
                                },
                                "end": {
                                  "line": 398,
                                  "column": 39
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 14179,
                                "end": 14183,
                                "loc": {
                                  "start": {
                                    "line": 398,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 398,
                                    "column": 24
                                  }
                                },
                                "name": "auto"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 14184,
                                "end": 14198,
                                "loc": {
                                  "start": {
                                    "line": 398,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 398,
                                    "column": 39
                                  }
                                },
                                "name": "getCenterPoint"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 14199,
                                "end": 14202,
                                "loc": {
                                  "start": {
                                    "line": 398,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 398,
                                    "column": 43
                                  }
                                },
                                "name": "arc"
                              }
                            ]
                          }
                        ]
                      },
                      {
                        "type": "NewExpression",
                        "start": 14214,
                        "end": 14239,
                        "loc": {
                          "start": {
                            "line": 399,
                            "column": 8
                          },
                          "end": {
                            "line": 399,
                            "column": 33
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 14218,
                          "end": 14231,
                          "loc": {
                            "start": {
                              "line": 399,
                              "column": 12
                            },
                            "end": {
                              "line": 399,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 14218,
                            "end": 14223,
                            "loc": {
                              "start": {
                                "line": 399,
                                "column": 12
                              },
                              "end": {
                                "line": 399,
                                "column": 17
                              }
                            },
                            "name": "THREE"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14224,
                            "end": 14231,
                            "loc": {
                              "start": {
                                "line": 399,
                                "column": 18
                              },
                              "end": {
                                "line": 399,
                                "column": 25
                              }
                            },
                            "name": "Vector2"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 14232,
                            "end": 14234,
                            "loc": {
                              "start": {
                                "line": 399,
                                "column": 26
                              },
                              "end": {
                                "line": 399,
                                "column": 28
                              }
                            },
                            "value": 10,
                            "rawValue": 10,
                            "raw": "10"
                          },
                          {
                            "type": "Literal",
                            "start": 14236,
                            "end": 14238,
                            "loc": {
                              "start": {
                                "line": 399,
                                "column": 30
                              },
                              "end": {
                                "line": 399,
                                "column": 32
                              }
                            },
                            "value": 30,
                            "rawValue": 30,
                            "raw": "30"
                          }
                        ]
                      },
                      {
                        "type": "NewExpression",
                        "start": 14249,
                        "end": 14273,
                        "loc": {
                          "start": {
                            "line": 400,
                            "column": 8
                          },
                          "end": {
                            "line": 400,
                            "column": 32
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 14253,
                          "end": 14266,
                          "loc": {
                            "start": {
                              "line": 400,
                              "column": 12
                            },
                            "end": {
                              "line": 400,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 14253,
                            "end": 14258,
                            "loc": {
                              "start": {
                                "line": 400,
                                "column": 12
                              },
                              "end": {
                                "line": 400,
                                "column": 17
                              }
                            },
                            "name": "THREE"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14259,
                            "end": 14266,
                            "loc": {
                              "start": {
                                "line": 400,
                                "column": 18
                              },
                              "end": {
                                "line": 400,
                                "column": 25
                              }
                            },
                            "name": "Vector2"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 14267,
                            "end": 14268,
                            "loc": {
                              "start": {
                                "line": 400,
                                "column": 26
                              },
                              "end": {
                                "line": 400,
                                "column": 27
                              }
                            },
                            "value": 0,
                            "rawValue": 0,
                            "raw": "0"
                          },
                          {
                            "type": "Literal",
                            "start": 14270,
                            "end": 14272,
                            "loc": {
                              "start": {
                                "line": 400,
                                "column": 29
                              },
                              "end": {
                                "line": 400,
                                "column": 31
                              }
                            },
                            "value": 10,
                            "rawValue": 10,
                            "raw": "10"
                          }
                        ]
                      },
                      {
                        "type": "NewExpression",
                        "start": 14283,
                        "end": 14307,
                        "loc": {
                          "start": {
                            "line": 401,
                            "column": 8
                          },
                          "end": {
                            "line": 401,
                            "column": 32
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 14287,
                          "end": 14300,
                          "loc": {
                            "start": {
                              "line": 401,
                              "column": 12
                            },
                            "end": {
                              "line": 401,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 14287,
                            "end": 14292,
                            "loc": {
                              "start": {
                                "line": 401,
                                "column": 12
                              },
                              "end": {
                                "line": 401,
                                "column": 17
                              }
                            },
                            "name": "THREE"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14293,
                            "end": 14300,
                            "loc": {
                              "start": {
                                "line": 401,
                                "column": 18
                              },
                              "end": {
                                "line": 401,
                                "column": 25
                              }
                            },
                            "name": "Vector2"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 14301,
                            "end": 14302,
                            "loc": {
                              "start": {
                                "line": 401,
                                "column": 26
                              },
                              "end": {
                                "line": 401,
                                "column": 27
                              }
                            },
                            "value": 0,
                            "rawValue": 0,
                            "raw": "0"
                          },
                          {
                            "type": "Literal",
                            "start": 14304,
                            "end": 14306,
                            "loc": {
                              "start": {
                                "line": 401,
                                "column": 29
                              },
                              "end": {
                                "line": 401,
                                "column": 31
                              }
                            },
                            "value": 20,
                            "rawValue": 20,
                            "raw": "20"
                          }
                        ]
                      },
                      {
                        "type": "NewExpression",
                        "start": 14317,
                        "end": 14341,
                        "loc": {
                          "start": {
                            "line": 402,
                            "column": 8
                          },
                          "end": {
                            "line": 402,
                            "column": 32
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 14321,
                          "end": 14334,
                          "loc": {
                            "start": {
                              "line": 402,
                              "column": 12
                            },
                            "end": {
                              "line": 402,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 14321,
                            "end": 14326,
                            "loc": {
                              "start": {
                                "line": 402,
                                "column": 12
                              },
                              "end": {
                                "line": 402,
                                "column": 17
                              }
                            },
                            "name": "THREE"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14327,
                            "end": 14334,
                            "loc": {
                              "start": {
                                "line": 402,
                                "column": 18
                              },
                              "end": {
                                "line": 402,
                                "column": 25
                              }
                            },
                            "name": "Vector2"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 14335,
                            "end": 14336,
                            "loc": {
                              "start": {
                                "line": 402,
                                "column": 26
                              },
                              "end": {
                                "line": 402,
                                "column": 27
                              }
                            },
                            "value": 0,
                            "rawValue": 0,
                            "raw": "0"
                          },
                          {
                            "type": "Literal",
                            "start": 14338,
                            "end": 14340,
                            "loc": {
                              "start": {
                                "line": 402,
                                "column": 29
                              },
                              "end": {
                                "line": 402,
                                "column": 31
                              }
                            },
                            "value": 30,
                            "rawValue": 30,
                            "raw": "30"
                          }
                        ]
                      },
                      {
                        "type": "NewExpression",
                        "start": 14351,
                        "end": 14377,
                        "loc": {
                          "start": {
                            "line": 403,
                            "column": 8
                          },
                          "end": {
                            "line": 403,
                            "column": 34
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 14355,
                          "end": 14368,
                          "loc": {
                            "start": {
                              "line": 403,
                              "column": 12
                            },
                            "end": {
                              "line": 403,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 14355,
                            "end": 14360,
                            "loc": {
                              "start": {
                                "line": 403,
                                "column": 12
                              },
                              "end": {
                                "line": 403,
                                "column": 17
                              }
                            },
                            "name": "THREE"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14361,
                            "end": 14368,
                            "loc": {
                              "start": {
                                "line": 403,
                                "column": 18
                              },
                              "end": {
                                "line": 403,
                                "column": 25
                              }
                            },
                            "name": "Vector2"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "UnaryExpression",
                            "start": 14369,
                            "end": 14372,
                            "loc": {
                              "start": {
                                "line": 403,
                                "column": 26
                              },
                              "end": {
                                "line": 403,
                                "column": 29
                              }
                            },
                            "operator": "-",
                            "prefix": true,
                            "argument": {
                              "type": "Literal",
                              "start": 14370,
                              "end": 14372,
                              "loc": {
                                "start": {
                                  "line": 403,
                                  "column": 27
                                },
                                "end": {
                                  "line": 403,
                                  "column": 29
                                }
                              },
                              "value": 10,
                              "rawValue": 10,
                              "raw": "10"
                            }
                          },
                          {
                            "type": "Literal",
                            "start": 14374,
                            "end": 14376,
                            "loc": {
                              "start": {
                                "line": 403,
                                "column": 31
                              },
                              "end": {
                                "line": 403,
                                "column": 33
                              }
                            },
                            "value": 30,
                            "rawValue": 30,
                            "raw": "30"
                          }
                        ]
                      },
                      {
                        "type": "NewExpression",
                        "start": 14387,
                        "end": 14413,
                        "loc": {
                          "start": {
                            "line": 404,
                            "column": 8
                          },
                          "end": {
                            "line": 404,
                            "column": 34
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 14391,
                          "end": 14404,
                          "loc": {
                            "start": {
                              "line": 404,
                              "column": 12
                            },
                            "end": {
                              "line": 404,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 14391,
                            "end": 14396,
                            "loc": {
                              "start": {
                                "line": 404,
                                "column": 12
                              },
                              "end": {
                                "line": 404,
                                "column": 17
                              }
                            },
                            "name": "THREE"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14397,
                            "end": 14404,
                            "loc": {
                              "start": {
                                "line": 404,
                                "column": 18
                              },
                              "end": {
                                "line": 404,
                                "column": 25
                              }
                            },
                            "name": "Vector2"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "UnaryExpression",
                            "start": 14405,
                            "end": 14408,
                            "loc": {
                              "start": {
                                "line": 404,
                                "column": 26
                              },
                              "end": {
                                "line": 404,
                                "column": 29
                              }
                            },
                            "operator": "-",
                            "prefix": true,
                            "argument": {
                              "type": "Literal",
                              "start": 14406,
                              "end": 14408,
                              "loc": {
                                "start": {
                                  "line": 404,
                                  "column": 27
                                },
                                "end": {
                                  "line": 404,
                                  "column": 29
                                }
                              },
                              "value": 10,
                              "rawValue": 10,
                              "raw": "10"
                            }
                          },
                          {
                            "type": "Literal",
                            "start": 14410,
                            "end": 14412,
                            "loc": {
                              "start": {
                                "line": 404,
                                "column": 31
                              },
                              "end": {
                                "line": 404,
                                "column": 33
                              }
                            },
                            "value": 20,
                            "rawValue": 20,
                            "raw": "20"
                          }
                        ]
                      },
                      {
                        "type": "NewExpression",
                        "start": 14423,
                        "end": 14449,
                        "loc": {
                          "start": {
                            "line": 405,
                            "column": 8
                          },
                          "end": {
                            "line": 405,
                            "column": 34
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 14427,
                          "end": 14440,
                          "loc": {
                            "start": {
                              "line": 405,
                              "column": 12
                            },
                            "end": {
                              "line": 405,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 14427,
                            "end": 14432,
                            "loc": {
                              "start": {
                                "line": 405,
                                "column": 12
                              },
                              "end": {
                                "line": 405,
                                "column": 17
                              }
                            },
                            "name": "THREE"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14433,
                            "end": 14440,
                            "loc": {
                              "start": {
                                "line": 405,
                                "column": 18
                              },
                              "end": {
                                "line": 405,
                                "column": 25
                              }
                            },
                            "name": "Vector2"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "UnaryExpression",
                            "start": 14441,
                            "end": 14444,
                            "loc": {
                              "start": {
                                "line": 405,
                                "column": 26
                              },
                              "end": {
                                "line": 405,
                                "column": 29
                              }
                            },
                            "operator": "-",
                            "prefix": true,
                            "argument": {
                              "type": "Literal",
                              "start": 14442,
                              "end": 14444,
                              "loc": {
                                "start": {
                                  "line": 405,
                                  "column": 27
                                },
                                "end": {
                                  "line": 405,
                                  "column": 29
                                }
                              },
                              "value": 20,
                              "rawValue": 20,
                              "raw": "20"
                            }
                          },
                          {
                            "type": "Literal",
                            "start": 14446,
                            "end": 14448,
                            "loc": {
                              "start": {
                                "line": 405,
                                "column": 31
                              },
                              "end": {
                                "line": 405,
                                "column": 33
                              }
                            },
                            "value": 10,
                            "rawValue": 10,
                            "raw": "10"
                          }
                        ]
                      },
                      {
                        "type": "NewExpression",
                        "start": 14459,
                        "end": 14484,
                        "loc": {
                          "start": {
                            "line": 406,
                            "column": 8
                          },
                          "end": {
                            "line": 406,
                            "column": 33
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 14463,
                          "end": 14476,
                          "loc": {
                            "start": {
                              "line": 406,
                              "column": 12
                            },
                            "end": {
                              "line": 406,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 14463,
                            "end": 14468,
                            "loc": {
                              "start": {
                                "line": 406,
                                "column": 12
                              },
                              "end": {
                                "line": 406,
                                "column": 17
                              }
                            },
                            "name": "THREE"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14469,
                            "end": 14476,
                            "loc": {
                              "start": {
                                "line": 406,
                                "column": 18
                              },
                              "end": {
                                "line": 406,
                                "column": 25
                              }
                            },
                            "name": "Vector2"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "UnaryExpression",
                            "start": 14477,
                            "end": 14480,
                            "loc": {
                              "start": {
                                "line": 406,
                                "column": 26
                              },
                              "end": {
                                "line": 406,
                                "column": 29
                              }
                            },
                            "operator": "-",
                            "prefix": true,
                            "argument": {
                              "type": "Literal",
                              "start": 14478,
                              "end": 14480,
                              "loc": {
                                "start": {
                                  "line": 406,
                                  "column": 27
                                },
                                "end": {
                                  "line": 406,
                                  "column": 29
                                }
                              },
                              "value": 50,
                              "rawValue": 50,
                              "raw": "50"
                            }
                          },
                          {
                            "type": "Literal",
                            "start": 14482,
                            "end": 14483,
                            "loc": {
                              "start": {
                                "line": 406,
                                "column": 31
                              },
                              "end": {
                                "line": 406,
                                "column": 32
                              }
                            },
                            "value": 0,
                            "rawValue": 0,
                            "raw": "0"
                          }
                        ]
                      }
                    ]
                  },
                  {
                    "type": "Literal",
                    "start": 14493,
                    "end": 14497,
                    "loc": {
                      "start": {
                        "line": 407,
                        "column": 7
                      },
                      "end": {
                        "line": 407,
                        "column": 11
                      }
                    },
                    "value": true,
                    "rawValue": true,
                    "raw": "true"
                  }
                ]
              }
            }
          },
          {
            "type": "ExpressionStatement",
            "start": 14505,
            "end": 14539,
            "loc": {
              "start": {
                "line": 409,
                "column": 4
              },
              "end": {
                "line": 409,
                "column": 38
              }
            },
            "expression": {
              "type": "AwaitExpression",
              "start": 14505,
              "end": 14538,
              "loc": {
                "start": {
                  "line": 409,
                  "column": 4
                },
                "end": {
                  "line": 409,
                  "column": 37
                }
              },
              "all": false,
              "argument": {
                "type": "CallExpression",
                "start": 14511,
                "end": 14538,
                "loc": {
                  "start": {
                    "line": 409,
                    "column": 10
                  },
                  "end": {
                    "line": 409,
                    "column": 37
                  }
                },
                "callee": {
                  "type": "MemberExpression",
                  "start": 14511,
                  "end": 14526,
                  "loc": {
                    "start": {
                      "line": 409,
                      "column": 10
                    },
                    "end": {
                      "line": 409,
                      "column": 25
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 14511,
                    "end": 14515,
                    "loc": {
                      "start": {
                        "line": 409,
                        "column": 10
                      },
                      "end": {
                        "line": 409,
                        "column": 14
                      }
                    },
                    "name": "auto"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 14516,
                    "end": 14526,
                    "loc": {
                      "start": {
                        "line": 409,
                        "column": 15
                      },
                      "end": {
                        "line": 409,
                        "column": 25
                      }
                    },
                    "name": "chooseTool"
                  },
                  "computed": false
                },
                "arguments": [
                  {
                    "type": "Literal",
                    "start": 14527,
                    "end": 14537,
                    "loc": {
                      "start": {
                        "line": 409,
                        "column": 26
                      },
                      "end": {
                        "line": 409,
                        "column": 36
                      }
                    },
                    "value": "fixation",
                    "rawValue": "fixation",
                    "raw": "'fixation'"
                  }
                ]
              }
            }
          },
          {
            "type": "ExpressionStatement",
            "start": 14544,
            "end": 14593,
            "loc": {
              "start": {
                "line": 410,
                "column": 4
              },
              "end": {
                "line": 410,
                "column": 53
              }
            },
            "expression": {
              "type": "AwaitExpression",
              "start": 14544,
              "end": 14592,
              "loc": {
                "start": {
                  "line": 410,
                  "column": 4
                },
                "end": {
                  "line": 410,
                  "column": 52
                }
              },
              "all": false,
              "argument": {
                "type": "CallExpression",
                "start": 14550,
                "end": 14592,
                "loc": {
                  "start": {
                    "line": 410,
                    "column": 10
                  },
                  "end": {
                    "line": 410,
                    "column": 52
                  }
                },
                "callee": {
                  "type": "MemberExpression",
                  "start": 14550,
                  "end": 14566,
                  "loc": {
                    "start": {
                      "line": 410,
                      "column": 10
                    },
                    "end": {
                      "line": 410,
                      "column": 26
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 14550,
                    "end": 14554,
                    "loc": {
                      "start": {
                        "line": 410,
                        "column": 10
                      },
                      "end": {
                        "line": 410,
                        "column": 14
                      }
                    },
                    "name": "auto"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 14555,
                    "end": 14566,
                    "loc": {
                      "start": {
                        "line": 410,
                        "column": 15
                      },
                      "end": {
                        "line": 410,
                        "column": 26
                      }
                    },
                    "name": "clickObject"
                  },
                  "computed": false
                },
                "arguments": [
                  {
                    "type": "CallExpression",
                    "start": 14567,
                    "end": 14591,
                    "loc": {
                      "start": {
                        "line": 410,
                        "column": 27
                      },
                      "end": {
                        "line": 410,
                        "column": 51
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 14567,
                      "end": 14585,
                      "loc": {
                        "start": {
                          "line": 410,
                          "column": 27
                        },
                        "end": {
                          "line": 410,
                          "column": 45
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 14567,
                        "end": 14571,
                        "loc": {
                          "start": {
                            "line": 410,
                            "column": 27
                          },
                          "end": {
                            "line": 410,
                            "column": 31
                          }
                        },
                        "name": "auto"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 14572,
                        "end": 14585,
                        "loc": {
                          "start": {
                            "line": 410,
                            "column": 32
                          },
                          "end": {
                            "line": 410,
                            "column": 45
                          }
                        },
                        "name": "getStartPoint"
                      },
                      "computed": false
                    },
                    "arguments": [
                      {
                        "type": "Identifier",
                        "start": 14586,
                        "end": 14590,
                        "loc": {
                          "start": {
                            "line": 410,
                            "column": 46
                          },
                          "end": {
                            "line": 410,
                            "column": 50
                          }
                        },
                        "name": "leg1"
                      }
                    ]
                  }
                ]
              }
            }
          },
          {
            "type": "ExpressionStatement",
            "start": 14598,
            "end": 14632,
            "loc": {
              "start": {
                "line": 411,
                "column": 4
              },
              "end": {
                "line": 411,
                "column": 38
              }
            },
            "expression": {
              "type": "AwaitExpression",
              "start": 14598,
              "end": 14631,
              "loc": {
                "start": {
                  "line": 411,
                  "column": 4
                },
                "end": {
                  "line": 411,
                  "column": 37
                }
              },
              "all": false,
              "argument": {
                "type": "CallExpression",
                "start": 14604,
                "end": 14631,
                "loc": {
                  "start": {
                    "line": 411,
                    "column": 10
                  },
                  "end": {
                    "line": 411,
                    "column": 37
                  }
                },
                "callee": {
                  "type": "MemberExpression",
                  "start": 14604,
                  "end": 14619,
                  "loc": {
                    "start": {
                      "line": 411,
                      "column": 10
                    },
                    "end": {
                      "line": 411,
                      "column": 25
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 14604,
                    "end": 14608,
                    "loc": {
                      "start": {
                        "line": 411,
                        "column": 10
                      },
                      "end": {
                        "line": 411,
                        "column": 14
                      }
                    },
                    "name": "auto"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 14609,
                    "end": 14619,
                    "loc": {
                      "start": {
                        "line": 411,
                        "column": 15
                      },
                      "end": {
                        "line": 411,
                        "column": 25
                      }
                    },
                    "name": "chooseTool"
                  },
                  "computed": false
                },
                "arguments": [
                  {
                    "type": "Literal",
                    "start": 14620,
                    "end": 14630,
                    "loc": {
                      "start": {
                        "line": 411,
                        "column": 26
                      },
                      "end": {
                        "line": 411,
                        "column": 36
                      }
                    },
                    "value": "fixation",
                    "rawValue": "fixation",
                    "raw": "'fixation'"
                  }
                ]
              }
            }
          },
          {
            "type": "ExpressionStatement",
            "start": 14637,
            "end": 14684,
            "loc": {
              "start": {
                "line": 412,
                "column": 4
              },
              "end": {
                "line": 412,
                "column": 51
              }
            },
            "expression": {
              "type": "AwaitExpression",
              "start": 14637,
              "end": 14683,
              "loc": {
                "start": {
                  "line": 412,
                  "column": 4
                },
                "end": {
                  "line": 412,
                  "column": 50
                }
              },
              "all": false,
              "argument": {
                "type": "CallExpression",
                "start": 14643,
                "end": 14683,
                "loc": {
                  "start": {
                    "line": 412,
                    "column": 10
                  },
                  "end": {
                    "line": 412,
                    "column": 50
                  }
                },
                "callee": {
                  "type": "MemberExpression",
                  "start": 14643,
                  "end": 14659,
                  "loc": {
                    "start": {
                      "line": 412,
                      "column": 10
                    },
                    "end": {
                      "line": 412,
                      "column": 26
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 14643,
                    "end": 14647,
                    "loc": {
                      "start": {
                        "line": 412,
                        "column": 10
                      },
                      "end": {
                        "line": 412,
                        "column": 14
                      }
                    },
                    "name": "auto"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 14648,
                    "end": 14659,
                    "loc": {
                      "start": {
                        "line": 412,
                        "column": 15
                      },
                      "end": {
                        "line": 412,
                        "column": 26
                      }
                    },
                    "name": "clickObject"
                  },
                  "computed": false
                },
                "arguments": [
                  {
                    "type": "CallExpression",
                    "start": 14660,
                    "end": 14682,
                    "loc": {
                      "start": {
                        "line": 412,
                        "column": 27
                      },
                      "end": {
                        "line": 412,
                        "column": 49
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 14660,
                      "end": 14676,
                      "loc": {
                        "start": {
                          "line": 412,
                          "column": 27
                        },
                        "end": {
                          "line": 412,
                          "column": 43
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 14660,
                        "end": 14664,
                        "loc": {
                          "start": {
                            "line": 412,
                            "column": 27
                          },
                          "end": {
                            "line": 412,
                            "column": 31
                          }
                        },
                        "name": "auto"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 14665,
                        "end": 14676,
                        "loc": {
                          "start": {
                            "line": 412,
                            "column": 32
                          },
                          "end": {
                            "line": 412,
                            "column": 43
                          }
                        },
                        "name": "getEndPoint"
                      },
                      "computed": false
                    },
                    "arguments": [
                      {
                        "type": "Identifier",
                        "start": 14677,
                        "end": 14681,
                        "loc": {
                          "start": {
                            "line": 412,
                            "column": 44
                          },
                          "end": {
                            "line": 412,
                            "column": 48
                          }
                        },
                        "name": "leg2"
                      }
                    ]
                  }
                ]
              }
            }
          },
          {
            "type": "ExpressionStatement",
            "start": 14689,
            "end": 14720,
            "loc": {
              "start": {
                "line": 413,
                "column": 4
              },
              "end": {
                "line": 413,
                "column": 35
              }
            },
            "expression": {
              "type": "AwaitExpression",
              "start": 14689,
              "end": 14719,
              "loc": {
                "start": {
                  "line": 413,
                  "column": 4
                },
                "end": {
                  "line": 413,
                  "column": 34
                }
              },
              "all": false,
              "argument": {
                "type": "CallExpression",
                "start": 14695,
                "end": 14719,
                "loc": {
                  "start": {
                    "line": 413,
                    "column": 10
                  },
                  "end": {
                    "line": 413,
                    "column": 34
                  }
                },
                "callee": {
                  "type": "MemberExpression",
                  "start": 14695,
                  "end": 14710,
                  "loc": {
                    "start": {
                      "line": 413,
                      "column": 10
                    },
                    "end": {
                      "line": 413,
                      "column": 25
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 14695,
                    "end": 14699,
                    "loc": {
                      "start": {
                        "line": 413,
                        "column": 10
                      },
                      "end": {
                        "line": 413,
                        "column": 14
                      }
                    },
                    "name": "auto"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 14700,
                    "end": 14710,
                    "loc": {
                      "start": {
                        "line": 413,
                        "column": 15
                      },
                      "end": {
                        "line": 413,
                        "column": 25
                      }
                    },
                    "name": "chooseTool"
                  },
                  "computed": false
                },
                "arguments": [
                  {
                    "type": "Literal",
                    "start": 14711,
                    "end": 14718,
                    "loc": {
                      "start": {
                        "line": 413,
                        "column": 26
                      },
                      "end": {
                        "line": 413,
                        "column": 33
                      }
                    },
                    "value": "empty",
                    "rawValue": "empty",
                    "raw": "'empty'"
                  }
                ]
              }
            }
          },
          {
            "type": "ExpressionStatement",
            "start": 14725,
            "end": 15033,
            "loc": {
              "start": {
                "line": 414,
                "column": 4
              },
              "end": {
                "line": 422,
                "column": 7
              }
            },
            "expression": {
              "type": "AwaitExpression",
              "start": 14725,
              "end": 15032,
              "loc": {
                "start": {
                  "line": 414,
                  "column": 4
                },
                "end": {
                  "line": 422,
                  "column": 6
                }
              },
              "all": false,
              "argument": {
                "type": "CallExpression",
                "start": 14731,
                "end": 15032,
                "loc": {
                  "start": {
                    "line": 414,
                    "column": 10
                  },
                  "end": {
                    "line": 422,
                    "column": 6
                  }
                },
                "callee": {
                  "type": "MemberExpression",
                  "start": 14731,
                  "end": 14751,
                  "loc": {
                    "start": {
                      "line": 414,
                      "column": 10
                    },
                    "end": {
                      "line": 414,
                      "column": 30
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 14731,
                    "end": 14735,
                    "loc": {
                      "start": {
                        "line": 414,
                        "column": 10
                      },
                      "end": {
                        "line": 414,
                        "column": 14
                      }
                    },
                    "name": "auto"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 14736,
                    "end": 14751,
                    "loc": {
                      "start": {
                        "line": 414,
                        "column": 15
                      },
                      "end": {
                        "line": 414,
                        "column": 30
                      }
                    },
                    "name": "dragSketchPoint"
                  },
                  "computed": false
                },
                "arguments": [
                  {
                    "type": "CallExpression",
                    "start": 14752,
                    "end": 14776,
                    "loc": {
                      "start": {
                        "line": 414,
                        "column": 31
                      },
                      "end": {
                        "line": 414,
                        "column": 55
                      }
                    },
                    "callee": {
                      "type": "MemberExpression",
                      "start": 14752,
                      "end": 14771,
                      "loc": {
                        "start": {
                          "line": 414,
                          "column": 31
                        },
                        "end": {
                          "line": 414,
                          "column": 50
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 14752,
                        "end": 14756,
                        "loc": {
                          "start": {
                            "line": 414,
                            "column": 31
                          },
                          "end": {
                            "line": 414,
                            "column": 35
                          }
                        },
                        "name": "auto"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 14757,
                        "end": 14771,
                        "loc": {
                          "start": {
                            "line": 414,
                            "column": 36
                          },
                          "end": {
                            "line": 414,
                            "column": 50
                          }
                        },
                        "name": "getCenterPoint"
                      },
                      "computed": false
                    },
                    "arguments": [
                      {
                        "type": "Identifier",
                        "start": 14772,
                        "end": 14775,
                        "loc": {
                          "start": {
                            "line": 414,
                            "column": 51
                          },
                          "end": {
                            "line": 414,
                            "column": 54
                          }
                        },
                        "name": "arc"
                      }
                    ]
                  },
                  {
                    "type": "ArrayExpression",
                    "start": 14778,
                    "end": 15031,
                    "loc": {
                      "start": {
                        "line": 414,
                        "column": 57
                      },
                      "end": {
                        "line": 422,
                        "column": 5
                      }
                    },
                    "elements": [
                      {
                        "type": "NewExpression",
                        "start": 14788,
                        "end": 14812,
                        "loc": {
                          "start": {
                            "line": 415,
                            "column": 8
                          },
                          "end": {
                            "line": 415,
                            "column": 32
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 14792,
                          "end": 14805,
                          "loc": {
                            "start": {
                              "line": 415,
                              "column": 12
                            },
                            "end": {
                              "line": 415,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 14792,
                            "end": 14797,
                            "loc": {
                              "start": {
                                "line": 415,
                                "column": 12
                              },
                              "end": {
                                "line": 415,
                                "column": 17
                              }
                            },
                            "name": "THREE"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14798,
                            "end": 14805,
                            "loc": {
                              "start": {
                                "line": 415,
                                "column": 18
                              },
                              "end": {
                                "line": 415,
                                "column": 25
                              }
                            },
                            "name": "Vector2"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 14806,
                            "end": 14807,
                            "loc": {
                              "start": {
                                "line": 415,
                                "column": 26
                              },
                              "end": {
                                "line": 415,
                                "column": 27
                              }
                            },
                            "value": 0,
                            "rawValue": 0,
                            "raw": "0"
                          },
                          {
                            "type": "Literal",
                            "start": 14809,
                            "end": 14811,
                            "loc": {
                              "start": {
                                "line": 415,
                                "column": 29
                              },
                              "end": {
                                "line": 415,
                                "column": 31
                              }
                            },
                            "value": 10,
                            "rawValue": 10,
                            "raw": "10"
                          }
                        ]
                      },
                      {
                        "type": "NewExpression",
                        "start": 14822,
                        "end": 14846,
                        "loc": {
                          "start": {
                            "line": 416,
                            "column": 8
                          },
                          "end": {
                            "line": 416,
                            "column": 32
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 14826,
                          "end": 14839,
                          "loc": {
                            "start": {
                              "line": 416,
                              "column": 12
                            },
                            "end": {
                              "line": 416,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 14826,
                            "end": 14831,
                            "loc": {
                              "start": {
                                "line": 416,
                                "column": 12
                              },
                              "end": {
                                "line": 416,
                                "column": 17
                              }
                            },
                            "name": "THREE"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14832,
                            "end": 14839,
                            "loc": {
                              "start": {
                                "line": 416,
                                "column": 18
                              },
                              "end": {
                                "line": 416,
                                "column": 25
                              }
                            },
                            "name": "Vector2"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 14840,
                            "end": 14841,
                            "loc": {
                              "start": {
                                "line": 416,
                                "column": 26
                              },
                              "end": {
                                "line": 416,
                                "column": 27
                              }
                            },
                            "value": 0,
                            "rawValue": 0,
                            "raw": "0"
                          },
                          {
                            "type": "Literal",
                            "start": 14843,
                            "end": 14845,
                            "loc": {
                              "start": {
                                "line": 416,
                                "column": 29
                              },
                              "end": {
                                "line": 416,
                                "column": 31
                              }
                            },
                            "value": 20,
                            "rawValue": 20,
                            "raw": "20"
                          }
                        ]
                      },
                      {
                        "type": "NewExpression",
                        "start": 14856,
                        "end": 14880,
                        "loc": {
                          "start": {
                            "line": 417,
                            "column": 8
                          },
                          "end": {
                            "line": 417,
                            "column": 32
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 14860,
                          "end": 14873,
                          "loc": {
                            "start": {
                              "line": 417,
                              "column": 12
                            },
                            "end": {
                              "line": 417,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 14860,
                            "end": 14865,
                            "loc": {
                              "start": {
                                "line": 417,
                                "column": 12
                              },
                              "end": {
                                "line": 417,
                                "column": 17
                              }
                            },
                            "name": "THREE"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14866,
                            "end": 14873,
                            "loc": {
                              "start": {
                                "line": 417,
                                "column": 18
                              },
                              "end": {
                                "line": 417,
                                "column": 25
                              }
                            },
                            "name": "Vector2"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Literal",
                            "start": 14874,
                            "end": 14875,
                            "loc": {
                              "start": {
                                "line": 417,
                                "column": 26
                              },
                              "end": {
                                "line": 417,
                                "column": 27
                              }
                            },
                            "value": 0,
                            "rawValue": 0,
                            "raw": "0"
                          },
                          {
                            "type": "Literal",
                            "start": 14877,
                            "end": 14879,
                            "loc": {
                              "start": {
                                "line": 417,
                                "column": 29
                              },
                              "end": {
                                "line": 417,
                                "column": 31
                              }
                            },
                            "value": 30,
                            "rawValue": 30,
                            "raw": "30"
                          }
                        ]
                      },
                      {
                        "type": "NewExpression",
                        "start": 14890,
                        "end": 14916,
                        "loc": {
                          "start": {
                            "line": 418,
                            "column": 8
                          },
                          "end": {
                            "line": 418,
                            "column": 34
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 14894,
                          "end": 14907,
                          "loc": {
                            "start": {
                              "line": 418,
                              "column": 12
                            },
                            "end": {
                              "line": 418,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 14894,
                            "end": 14899,
                            "loc": {
                              "start": {
                                "line": 418,
                                "column": 12
                              },
                              "end": {
                                "line": 418,
                                "column": 17
                              }
                            },
                            "name": "THREE"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14900,
                            "end": 14907,
                            "loc": {
                              "start": {
                                "line": 418,
                                "column": 18
                              },
                              "end": {
                                "line": 418,
                                "column": 25
                              }
                            },
                            "name": "Vector2"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "UnaryExpression",
                            "start": 14908,
                            "end": 14911,
                            "loc": {
                              "start": {
                                "line": 418,
                                "column": 26
                              },
                              "end": {
                                "line": 418,
                                "column": 29
                              }
                            },
                            "operator": "-",
                            "prefix": true,
                            "argument": {
                              "type": "Literal",
                              "start": 14909,
                              "end": 14911,
                              "loc": {
                                "start": {
                                  "line": 418,
                                  "column": 27
                                },
                                "end": {
                                  "line": 418,
                                  "column": 29
                                }
                              },
                              "value": 10,
                              "rawValue": 10,
                              "raw": "10"
                            }
                          },
                          {
                            "type": "Literal",
                            "start": 14913,
                            "end": 14915,
                            "loc": {
                              "start": {
                                "line": 418,
                                "column": 31
                              },
                              "end": {
                                "line": 418,
                                "column": 33
                              }
                            },
                            "value": 30,
                            "rawValue": 30,
                            "raw": "30"
                          }
                        ]
                      },
                      {
                        "type": "NewExpression",
                        "start": 14926,
                        "end": 14952,
                        "loc": {
                          "start": {
                            "line": 419,
                            "column": 8
                          },
                          "end": {
                            "line": 419,
                            "column": 34
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 14930,
                          "end": 14943,
                          "loc": {
                            "start": {
                              "line": 419,
                              "column": 12
                            },
                            "end": {
                              "line": 419,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 14930,
                            "end": 14935,
                            "loc": {
                              "start": {
                                "line": 419,
                                "column": 12
                              },
                              "end": {
                                "line": 419,
                                "column": 17
                              }
                            },
                            "name": "THREE"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14936,
                            "end": 14943,
                            "loc": {
                              "start": {
                                "line": 419,
                                "column": 18
                              },
                              "end": {
                                "line": 419,
                                "column": 25
                              }
                            },
                            "name": "Vector2"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "UnaryExpression",
                            "start": 14944,
                            "end": 14947,
                            "loc": {
                              "start": {
                                "line": 419,
                                "column": 26
                              },
                              "end": {
                                "line": 419,
                                "column": 29
                              }
                            },
                            "operator": "-",
                            "prefix": true,
                            "argument": {
                              "type": "Literal",
                              "start": 14945,
                              "end": 14947,
                              "loc": {
                                "start": {
                                  "line": 419,
                                  "column": 27
                                },
                                "end": {
                                  "line": 419,
                                  "column": 29
                                }
                              },
                              "value": 10,
                              "rawValue": 10,
                              "raw": "10"
                            }
                          },
                          {
                            "type": "Literal",
                            "start": 14949,
                            "end": 14951,
                            "loc": {
                              "start": {
                                "line": 419,
                                "column": 31
                              },
                              "end": {
                                "line": 419,
                                "column": 33
                              }
                            },
                            "value": 20,
                            "rawValue": 20,
                            "raw": "20"
                          }
                        ]
                      },
                      {
                        "type": "NewExpression",
                        "start": 14962,
                        "end": 14988,
                        "loc": {
                          "start": {
                            "line": 420,
                            "column": 8
                          },
                          "end": {
                            "line": 420,
                            "column": 34
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 14966,
                          "end": 14979,
                          "loc": {
                            "start": {
                              "line": 420,
                              "column": 12
                            },
                            "end": {
                              "line": 420,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 14966,
                            "end": 14971,
                            "loc": {
                              "start": {
                                "line": 420,
                                "column": 12
                              },
                              "end": {
                                "line": 420,
                                "column": 17
                              }
                            },
                            "name": "THREE"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14972,
                            "end": 14979,
                            "loc": {
                              "start": {
                                "line": 420,
                                "column": 18
                              },
                              "end": {
                                "line": 420,
                                "column": 25
                              }
                            },
                            "name": "Vector2"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "UnaryExpression",
                            "start": 14980,
                            "end": 14983,
                            "loc": {
                              "start": {
                                "line": 420,
                                "column": 26
                              },
                              "end": {
                                "line": 420,
                                "column": 29
                              }
                            },
                            "operator": "-",
                            "prefix": true,
                            "argument": {
                              "type": "Literal",
                              "start": 14981,
                              "end": 14983,
                              "loc": {
                                "start": {
                                  "line": 420,
                                  "column": 27
                                },
                                "end": {
                                  "line": 420,
                                  "column": 29
                                }
                              },
                              "value": 20,
                              "rawValue": 20,
                              "raw": "20"
                            }
                          },
                          {
                            "type": "Literal",
                            "start": 14985,
                            "end": 14987,
                            "loc": {
                              "start": {
                                "line": 420,
                                "column": 31
                              },
                              "end": {
                                "line": 420,
                                "column": 33
                              }
                            },
                            "value": 10,
                            "rawValue": 10,
                            "raw": "10"
                          }
                        ]
                      },
                      {
                        "type": "NewExpression",
                        "start": 14998,
                        "end": 15024,
                        "loc": {
                          "start": {
                            "line": 421,
                            "column": 8
                          },
                          "end": {
                            "line": 421,
                            "column": 34
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 15002,
                          "end": 15015,
                          "loc": {
                            "start": {
                              "line": 421,
                              "column": 12
                            },
                            "end": {
                              "line": 421,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 15002,
                            "end": 15007,
                            "loc": {
                              "start": {
                                "line": 421,
                                "column": 12
                              },
                              "end": {
                                "line": 421,
                                "column": 17
                              }
                            },
                            "name": "THREE"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 15008,
                            "end": 15015,
                            "loc": {
                              "start": {
                                "line": 421,
                                "column": 18
                              },
                              "end": {
                                "line": 421,
                                "column": 25
                              }
                            },
                            "name": "Vector2"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "UnaryExpression",
                            "start": 15016,
                            "end": 15019,
                            "loc": {
                              "start": {
                                "line": 421,
                                "column": 26
                              },
                              "end": {
                                "line": 421,
                                "column": 29
                              }
                            },
                            "operator": "-",
                            "prefix": true,
                            "argument": {
                              "type": "Literal",
                              "start": 15017,
                              "end": 15019,
                              "loc": {
                                "start": {
                                  "line": 421,
                                  "column": 27
                                },
                                "end": {
                                  "line": 421,
                                  "column": 29
                                }
                              },
                              "value": 50,
                              "rawValue": 50,
                              "raw": "50"
                            }
                          },
                          {
                            "type": "Literal",
                            "start": 15021,
                            "end": 15023,
                            "loc": {
                              "start": {
                                "line": 421,
                                "column": 31
                              },
                              "end": {
                                "line": 421,
                                "column": 33
                              }
                            },
                            "value": 30,
                            "rawValue": 30,
                            "raw": "30"
                          }
                        ]
                      }
                    ]
                  }
                ]
              }
            }
          },
          {
            "type": "ExpressionStatement",
            "start": 15038,
            "end": 15068,
            "loc": {
              "start": {
                "line": 423,
                "column": 4
              },
              "end": {
                "line": 423,
                "column": 34
              }
            },
            "expression": {
              "type": "AwaitExpression",
              "start": 15038,
              "end": 15067,
              "loc": {
                "start": {
                  "line": 423,
                  "column": 4
                },
                "end": {
                  "line": 423,
                  "column": 33
                }
              },
              "all": false,
              "argument": {
                "type": "CallExpression",
                "start": 15044,
                "end": 15067,
                "loc": {
                  "start": {
                    "line": 423,
                    "column": 10
                  },
                  "end": {
                    "line": 423,
                    "column": 33
                  }
                },
                "callee": {
                  "type": "MemberExpression",
                  "start": 15044,
                  "end": 15065,
                  "loc": {
                    "start": {
                      "line": 423,
                      "column": 10
                    },
                    "end": {
                      "line": 423,
                      "column": 31
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 15044,
                    "end": 15048,
                    "loc": {
                      "start": {
                        "line": 423,
                        "column": 10
                      },
                      "end": {
                        "line": 423,
                        "column": 14
                      }
                    },
                    "name": "auto"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 15049,
                    "end": 15065,
                    "loc": {
                      "start": {
                        "line": 423,
                        "column": 15
                      },
                      "end": {
                        "line": 423,
                        "column": 31
                      }
                    },
                    "name": "solveConstraints"
                  },
                  "computed": false
                },
                "arguments": []
              }
            }
          },
          {
            "type": "ExpressionStatement",
            "start": 15074,
            "end": 15105,
            "loc": {
              "start": {
                "line": 425,
                "column": 4
              },
              "end": {
                "line": 425,
                "column": 35
              }
            },
            "expression": {
              "type": "AwaitExpression",
              "start": 15074,
              "end": 15104,
              "loc": {
                "start": {
                  "line": 425,
                  "column": 4
                },
                "end": {
                  "line": 425,
                  "column": 34
                }
              },
              "all": false,
              "argument": {
                "type": "CallExpression",
                "start": 15080,
                "end": 15104,
                "loc": {
                  "start": {
                    "line": 425,
                    "column": 10
                  },
                  "end": {
                    "line": 425,
                    "column": 34
                  }
                },
                "callee": {
                  "type": "MemberExpression",
                  "start": 15080,
                  "end": 15097,
                  "loc": {
                    "start": {
                      "line": 425,
                      "column": 10
                    },
                    "end": {
                      "line": 425,
                      "column": 27
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 15080,
                    "end": 15084,
                    "loc": {
                      "start": {
                        "line": 425,
                        "column": 10
                      },
                      "end": {
                        "line": 425,
                        "column": 14
                      }
                    },
                    "name": "auto"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 15085,
                    "end": 15097,
                    "loc": {
                      "start": {
                        "line": 425,
                        "column": 15
                      },
                      "end": {
                        "line": 425,
                        "column": 27
                      }
                    },
                    "name": "deleteObject"
                  },
                  "computed": false
                },
                "arguments": [
                  {
                    "type": "Identifier",
                    "start": 15098,
                    "end": 15103,
                    "loc": {
                      "start": {
                        "line": 425,
                        "column": 28
                      },
                      "end": {
                        "line": 425,
                        "column": 33
                      }
                    },
                    "name": "line2"
                  }
                ]
              }
            }
          }
        ]
      }
    },
    {
      "type": "ExportDefaultDeclaration",
      "start": 15109,
      "end": 15361,
      "loc": {
        "start": {
          "line": 428,
          "column": 0
        },
        "end": {
          "line": 433,
          "column": 1
        }
      },
      "declaration": {
        "type": "FunctionDeclaration",
        "start": 15124,
        "end": 15361,
        "loc": {
          "start": {
            "line": 428,
            "column": 15
          },
          "end": {
            "line": 433,
            "column": 1
          }
        },
        "id": {
          "type": "Identifier",
          "start": 15139,
          "end": 15150,
          "loc": {
            "start": {
              "line": 428,
              "column": 30
            },
            "end": {
              "line": 428,
              "column": 41
            }
          },
          "name": "runAllTests"
        },
        "generator": false,
        "expression": false,
        "async": true,
        "params": [
          {
            "type": "Identifier",
            "start": 15151,
            "end": 15159,
            "loc": {
              "start": {
                "line": 428,
                "column": 42
              },
              "end": {
                "line": 428,
                "column": 50
              }
            },
            "name": "sketcher"
          },
          {
            "type": "Identifier",
            "start": 15161,
            "end": 15171,
            "loc": {
              "start": {
                "line": 428,
                "column": 52
              },
              "end": {
                "line": 428,
                "column": 62
              }
            },
            "name": "rootObject"
          }
        ],
        "body": {
          "type": "BlockStatement",
          "start": 15173,
          "end": 15361,
          "loc": {
            "start": {
              "line": 428,
              "column": 64
            },
            "end": {
              "line": 433,
              "column": 1
            }
          },
          "body": [
            {
              "type": "VariableDeclaration",
              "start": 15179,
              "end": 15223,
              "loc": {
                "start": {
                  "line": 429,
                  "column": 4
                },
                "end": {
                  "line": 429,
                  "column": 48
                }
              },
              "declarations": [
                {
                  "type": "VariableDeclarator",
                  "start": 15183,
                  "end": 15222,
                  "loc": {
                    "start": {
                      "line": 429,
                      "column": 8
                    },
                    "end": {
                      "line": 429,
                      "column": 47
                    }
                  },
                  "id": {
                    "type": "Identifier",
                    "start": 15183,
                    "end": 15187,
                    "loc": {
                      "start": {
                        "line": 429,
                        "column": 8
                      },
                      "end": {
                        "line": 429,
                        "column": 12
                      }
                    },
                    "name": "auto"
                  },
                  "init": {
                    "type": "NewExpression",
                    "start": 15190,
                    "end": 15222,
                    "loc": {
                      "start": {
                        "line": 429,
                        "column": 15
                      },
                      "end": {
                        "line": 429,
                        "column": 47
                      }
                    },
                    "callee": {
                      "type": "Identifier",
                      "start": 15194,
                      "end": 15212,
                      "loc": {
                        "start": {
                          "line": 429,
                          "column": 19
                        },
                        "end": {
                          "line": 429,
                          "column": 37
                        }
                      },
                      "name": "SketcherAutomation"
                    },
                    "arguments": [
                      {
                        "type": "Identifier",
                        "start": 15213,
                        "end": 15221,
                        "loc": {
                          "start": {
                            "line": 429,
                            "column": 38
                          },
                          "end": {
                            "line": 429,
                            "column": 46
                          }
                        },
                        "name": "sketcher"
                      }
                    ]
                  }
                }
              ],
              "kind": "var",
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": "auto.setRootObject(rootObject); //TODO: sketch creation?...",
                  "start": 15228,
                  "end": 15289,
                  "loc": {
                    "start": {
                      "line": 430,
                      "column": 4
                    },
                    "end": {
                      "line": 430,
                      "column": 65
                    }
                  },
                  "range": [
                    15228,
                    15289
                  ]
                }
              ]
            },
            {
              "type": "ExpressionStatement",
              "start": 15294,
              "end": 15320,
              "loc": {
                "start": {
                  "line": 431,
                  "column": 4
                },
                "end": {
                  "line": 431,
                  "column": 30
                }
              },
              "expression": {
                "type": "CallExpression",
                "start": 15294,
                "end": 15319,
                "loc": {
                  "start": {
                    "line": 431,
                    "column": 4
                  },
                  "end": {
                    "line": 431,
                    "column": 29
                  }
                },
                "callee": {
                  "type": "MemberExpression",
                  "start": 15294,
                  "end": 15314,
                  "loc": {
                    "start": {
                      "line": 431,
                      "column": 4
                    },
                    "end": {
                      "line": 431,
                      "column": 24
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 15294,
                    "end": 15298,
                    "loc": {
                      "start": {
                        "line": 431,
                        "column": 4
                      },
                      "end": {
                        "line": 431,
                        "column": 8
                      }
                    },
                    "name": "auto",
                    "leadingComments": null
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 15299,
                    "end": 15314,
                    "loc": {
                      "start": {
                        "line": 431,
                        "column": 9
                      },
                      "end": {
                        "line": 431,
                        "column": 24
                      }
                    },
                    "name": "setTickWaitTime"
                  },
                  "computed": false,
                  "leadingComments": null
                },
                "arguments": [
                  {
                    "type": "Literal",
                    "start": 15315,
                    "end": 15318,
                    "loc": {
                      "start": {
                        "line": 431,
                        "column": 25
                      },
                      "end": {
                        "line": 431,
                        "column": 28
                      }
                    },
                    "value": 500,
                    "rawValue": 500,
                    "raw": "500"
                  }
                ],
                "leadingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": "auto.setRootObject(rootObject); //TODO: sketch creation?...",
                  "start": 15228,
                  "end": 15289,
                  "loc": {
                    "start": {
                      "line": 430,
                      "column": 4
                    },
                    "end": {
                      "line": 430,
                      "column": 65
                    }
                  },
                  "range": [
                    15228,
                    15289
                  ]
                }
              ]
            },
            {
              "type": "ExpressionStatement",
              "start": 15325,
              "end": 15359,
              "loc": {
                "start": {
                  "line": 432,
                  "column": 4
                },
                "end": {
                  "line": 432,
                  "column": 38
                }
              },
              "expression": {
                "type": "CallExpression",
                "start": 15325,
                "end": 15358,
                "loc": {
                  "start": {
                    "line": 432,
                    "column": 4
                  },
                  "end": {
                    "line": 432,
                    "column": 37
                  }
                },
                "callee": {
                  "type": "MemberExpression",
                  "start": 15325,
                  "end": 15337,
                  "loc": {
                    "start": {
                      "line": 432,
                      "column": 4
                    },
                    "end": {
                      "line": 432,
                      "column": 16
                    }
                  },
                  "object": {
                    "type": "Identifier",
                    "start": 15325,
                    "end": 15329,
                    "loc": {
                      "start": {
                        "line": 432,
                        "column": 4
                      },
                      "end": {
                        "line": 432,
                        "column": 8
                      }
                    },
                    "name": "auto"
                  },
                  "property": {
                    "type": "Identifier",
                    "start": 15330,
                    "end": 15337,
                    "loc": {
                      "start": {
                        "line": 432,
                        "column": 9
                      },
                      "end": {
                        "line": 432,
                        "column": 16
                      }
                    },
                    "name": "execute"
                  },
                  "computed": false
                },
                "arguments": [
                  {
                    "type": "Identifier",
                    "start": 15338,
                    "end": 15357,
                    "loc": {
                      "start": {
                        "line": 432,
                        "column": 17
                      },
                      "end": {
                        "line": 432,
                        "column": 36
                      }
                    },
                    "name": "someAutomationStuff"
                  }
                ]
              }
            }
          ]
        },
        "leadingComments": [],
        "trailingComments": []
      }
    }
  ]
}